我在this SO question 描述的問題在我的情況,不過可選的PARAM默認值是一個類似的問題:
1.定義在一個單獨的C++/CLI DLL。
2.已經在該lib中定義爲「public static const」
當我嘗試使用該值作爲C#中的默認參數值時,我得到「必須是編譯時間常量」。
有沒有辦法共享(C++/cli)庫和(C#)應用程序之間的常見常量值?可選參數「必須是一個編譯時間常數」
C++/CLI lib目錄下:
namespace MyCPlusPlusCLILib {
public ref class CPPCLIClass {
public:
static const double Invalid = -1;
}
C#代碼:
public MyMethod(double fish = MyCPlusPlusCLILib.CPPCLIClass.Invalid) { }
// C# compiler error "Must be a compile time const"
OR
const double MyConstDouble = MyCPlusPlusCLILib.CPPCLIClass.Invalid;
// C# compiler error "Must be a compile time const"
參數是什麼類型? –
@ChrisMantle double – Ricibob
請過帳一些代碼。 – nvoigt