我有一個const int,它是在我的託管C++ DLL中編譯時計算的。我需要在C#程序中調用它的屬性中使用此值。最初,我創建了一個返回const int值的靜態方法,但C#沒有將此視爲編譯時常量。我也試過宣佈它爲DLL命名空間內用const int如何將const int從託管C++ DLL傳遞到C#以用作屬性中的字段值
// C++
namespace MyNameSpace {
const int AttributeConstValue = 15 + sizeof(int);
. . .
}
嘗試訪問從C#的回報「在命名空間myNameSpace對象不存在」
MyNameSpace.AttributeConstValue有沒有辦法通過一個常量來C#並讓它看作是一個const表達式?
我們同時發佈相同的答案。 :) 謝謝! – JonN
在我的情況下,C++ DLL項目和C#項目都是在C#項目的同一解決方案中構建的,具體取決於C++ DLL,從而減輕了不安全的情況。 – JonN