'System :: String ^'在C ++中的含义是什么?

时间:2010-11-09 15:45:48

标签: .net visual-c++ c++-cli language-features

  

可能重复:
  What does the caret mean in C++/CLI?

System::String是一个班级。附加插入符是什么意思?

System::String^ productString = L"";

有没有人见过这个?我在Stroustrop找不到任何东西。

5 个答案:

答案 0 :(得分:8)

这是微软的 C++/CLI ^运算符用于访问.NET引用类型。它意味着一种“句柄”,语法为ClassName^而不是ClassName*

答案 1 :(得分:5)

它不是真正的C ++,而是C ++ / CLI(一种面向公共语言界面的C ++外观相似的语言)

答案 2 :(得分:5)

  

{+ 1}}在C ++中的含义是什么?

什么也没有!因为它不是C ++,它的C ++ / CLI。 'System::String^'是句柄productString^

答案 3 :(得分:3)

此语法特定于C++/CLI,即Microsoft的C ++托管版本。

避免这种情况,除非你绝对必须让它与本机C ++代码互操作。如果您正在编写托管代码,请使用C# - 本机代码,C ++。

答案 4 :(得分:2)

它不是标准的C ++,它是C++/CLI,其中System::String^表示System::String的句柄。