|
|
1
23
使用不安全代码有三个原因:
|
|
|
2
5
有时,您需要指针来将C连接到底层操作系统或其他本机代码。你强烈反对这样做,因为这样做是“不安全的”(纳奇)。 在一些非常罕见的情况下,你的性能是如此的CPU限制,以至于你需要那一点点额外的性能。我的建议是在汇编程序或C/C++的单独模块中编写这些CPU集成件,导出API,并让.NET代码调用API。另一个可能的好处是,您可以将特定于平台的代码放在非托管模块中,并使.NET平台不可知。 |
|
3
4
我倾向于避免,但有时它非常有用:
例如,我维护了一些序列化代码。写一篇
现在我可以轮班了(
|
|
|
4
0
至少有一个托管的.NET API常常使使用指针变得不可避免。见 SecureString 和 Marshal.SecureStringToGlobalAllocUnicode .
这个
只有
获取
|