请告诉我,下面代码中的^
字符是什么:
[AttributeUsage (AttributeTargets::Class)]
public ref class ControlDescriptionAttribute : Attribute
{
public:
ControlDescriptionAttribute (String ^name, String ^description) :
_name (name),
_description (description)
{
}
property String ^Name
{
String ^get () { return _name; }
}
property String ^Description
{
String ^get () { return _description; }
}
private:
String
^ _name,
^ _description;
};
我发现它寻找不同的东西,但从未遇到^
的使用。
答案 0 :(得分:2)
我们可以先告诉你那不是C#吗?完全错误的语言 - 正如你在公众参考中看到的那样。在C#中,它将是公共类,而不是公共引用类;)
这是C ++ / CLI,^是托管引用的指标,非托管*的管理版本
属性一般是
String ^(指向字符串的托管指针)。
答案 1 :(得分:1)
我认为你已经把它与C ++ / CLI搞混了。据我所知,它不是C#中的典型用法。
简单来说,它只是一个指针。在MSDN术语中它是一个托管指针。 :)
一些可能有用的参考资料:
http://msdn.microsoft.com/en-us/library/te3ecsc8(VS.80).aspx
另请查看@Lloyd评论中提供的链接。