我读过non-nullable许多问题和答案。看起来像C#(4.0)中接近非空类型的最好方法是Jon Skeet的NonNullable<>黑客。如何在C#中近距离接近不可空引用类型?
但是,似乎C++/CLI通过支持托管引用:Foo%
(而不是本机C++ Foo&
)解决了许多问题。编译器通过将modreq(IsImplicitlyDereferenced)
添加到参数中来完成此工作。试图从C#导致调用这样的功能:
'<FunctionName>' is not supported by the language
有没有什么更好的那么非空<>?
有什么办法(合理 - 即不使用反射)从C#调用C++/CLI方法Foo::Method(Bar%)
?
[编辑]似乎有什么目前优于非空<> ...我想我会得到在C++/CLI的东西有些意见,因为它已经至少部分解。
链接已经死了。新的链接:http://codeblog.jonskeet.uk/2008/10/06/non-nullable-reference-types/ – 2016-03-25 10:40:09
修正,谢谢... – 2016-03-25 16:47:35