如何在C++/CLI中为返回值添加属性?

Ori*_*rds 3 c# attributes c++-cli

在C#中,您可以使用属性修饰函数返回值,如下所示:

[return: MarshalAs(UnmanagedType.IUnknown)]
object LoadStuff();
Run Code Online (Sandbox Code Playgroud)

我的问题是,如何在C++/CLI中执行此操作?我有这个:

[return: MarshalAs(UnmanagedType::IUnknown)]
Object^ LoadStuff();
Run Code Online (Sandbox Code Playgroud)

但编译器出错了'return' : unknown attribute qualifier.

是否有一种我无法找到的替代语法?

Jar*_*Par 5

使用returnvalue而不是return

[returnvalue: MarshalAs(UnmanagedType::IUknown)]
Run Code Online (Sandbox Code Playgroud)

完整的属性目标列表可在C++/CLI规范的第28.2节中找到(PDF)