2010-08-18 70 views

回答

39

可以使用OutAttribute:

using namespace System::Runtime::InteropServices;  
void foo([Out] Bar^% x); 
8

在C++/CLI中沒有這種特定的語法。我認爲你可以通過添加OutAttribute來修改參數。但我不確定它是否達到與C#out完全相同的語義。

out的概念大部分僅限於C#。 CLR實際上只看到ref參數。我相信out的概念是通過mod opt實現的,大多數語言都忽略它。

+1

是啊,同爲VB.NET – 2010-08-18 17:35:50

+1

這是通通過引用語法用'應用到參數OutAttribute'像你說的。它創建與C#'out'參數完全相同的元數據。通過「不......完全相同的語義」是否指的是在C#中參數開始未初始化,並且必須在函數返回之前明確賦值? – 2010-08-19 02:37:38