在 C++/CLI 中,您可以在托管类中使用本机类型,因为不允许在托管类中保存本机类的成员:在这种情况下您需要使用指针。
这是一个例子:
class NativeClass
{
....
};
public ref class ManagedClass
{
private:
NativeClass mNativeClass; // Not allowed !
NativeClass * mNativeClass; // OK
auto_ptr<NativeClass> mNativeClass; //Not allowed !
boost::shared_ptr<NativeClass> mNativeClass; //Not allowed !
};
有谁知道 C++/CLI 世界中的shared_ptr 的等价物吗?
编辑:
感谢您的建议“1800-信息”。根据您的建议,我检查了 STL.Net,但它仅适用于 Visual Studio 2008,并且它提供容器+算法,但没有智能指针。
我找到了答案代码项目 http://www.codeproject.com :
Nishant Sivakumar 发表了一篇关于此的文章:http://www.codeproject.com/KB/mcpp/CAutoNativePtr.aspx http://www.codeproject.com/KB/mcpp/CAutoNativePtr.aspx
在此页面上,还可以查找 Denis N. Shevchenko 的评论:他提供了一个类似 stl 的实现,效果非常好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)