如何为System.String定义类型别名^

时间:2016-09-13 16:02:56

标签: c# c++-cli

我正在尝试按如下方式定义自己的类型别名:

using PrjString = System.String;
using PrjInt = System.Int32;
using PrjFloat = System.Single;
using PrjDateTime = System.DateTime;

我遇到了String类型的问题。当我尝试使用字符串并将其作为参考传递时:

PrjString^ name;
GetName(name); // Receives name as reference and return the gathered name

我无法编译:

PrjString ^name: error CS0118: `string` is a `type` but is used like a `variable`

另一方面,如果我定义:

using PrjString = System.String^; 

它也不能编译:

using PrjString = System.String^: error CS1002: ; expected

有没有办法为System.String^定义类型别名?

1 个答案:

答案 0 :(得分:1)

^表示法在c#中不是有效语法。要通过引用传递,请使用ref关键字:

using PrjString = System.String;

PrjString name;
GetName(ref name);