首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Mono中避免使用"unsafe“有什么意义吗?

在Mono中避免使用"unsafe“有什么意义吗?
EN

Stack Overflow用户
提问于 2011-05-24 01:36:02
回答 1查看 926关注 0票数 5

我最近发现,在使用C#/Mono中的某些概念时,我需要指定“不安全”选项。我不仅必须在我的代码中指定选项,我还必须在编译它时指定它,这会引起“此代码本质上是不安全的,使用起来有风险”的感觉。这里奇怪的是,DllImport不需要不安全的标志,所以我可以在我的“安全代码”中创建我想要的所有段错误。有什么理由要避免我忽略的不安全代码吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-24 01:45:38

对于大多数C#开发人员来说,DllImport是一个众所周知的概念。它还会导致可能发生分段故障的相对较小的区域。使用unsafe代码,您可以更轻松地在与unsafe调用无关的地方创建随机崩溃(通过操作您认为正在接触的内存区域)。

这很像编译器的警告--一些开发人员没有注意到它们,一些人将“将警告视为错误”变成了“全部”。猜猜代码更容易维护的结果是什么?

此外,如果可以避免DllImport (因为潜在的破坏/遗漏错误/可移植性问题等),那么本身也不是一个好主意。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6100765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档