我刚刚偶然发现unsafe
here,想知道ref new
是否有所不同。
代码示例here显示了如何使用ref new创建托管堆上对象的句柄:
gcnew
并使用gcnew here
Foo^ spFoo = ref new Foo();
那么它们在概念上是等效的吗?
答案 0 :(得分:1)
如果您只是对文档的布局感到困惑:
C ++ / CLI用于公共语言运行时(CLR)。
C ++ / CX用于Windows运行时(WinRT)。
它们足够相似,可以一起记录,但是不一样。
这就是为什么在您链接的文档中它们具有三个标题:
对于C ++ / CLI,gcnew
是您所使用的。除非您使用的是C ++ / CX,否则“ Windows运行时”部分将不适用。