C#的C ++表示? CLR上的修饰符

时间:2013-10-27 11:22:35

标签: clr

我正在CLR上运行类库。

我想知道如何编写返回可空类型的函数。

如何使C ++ ref类与下面的C#类完全相同?

我已经在MSDN上搜索了,但我找不到了。

class ResultClass
{
}

class SomeClass
{
    public ResultClass? getResult();
}
谢谢你的阅读。

1 个答案:

答案 0 :(得分:2)

C ++ / CLI不支持语法糖吗?问号,你必须使用Nullable<>结构明确。它具有与C#相同的用法,你从不使用Nullable<>在引用类型上。只需返回nullptr作为ResultClass之类的引用类型。显示语法的代码段:

public ref class SomeClass {
public:
    ResultClass^ getResult() {
       return nullptr;    // TODO: call native code
    }
    Nullable<int> nullableExample() {
       Nullable<int> retval;
       if (someCondition) retval = Nullable<int>(42);
       return retval;
    }
};