我在C++中有一個TInt類,它包含一個整數值並提供一些方法。它也有一個接受INT一個默認的構造,讓我在C++中說:C++ - >使用SWIG的C#:如何使用默認構造函數的類
TInt X=3;
我想使用痛飲這和其他類導出到C#,我不能夠弄清楚什麼做我需要做的,能寫在C#中的同一行:
TInt X=3;
現在,我得到一個預期的錯誤「無法隱式轉換‘詮釋’到‘色彩’」
的東西是更因爲在其他類中也有接受TInt作爲參數的方法。例如,TIntV是一個包含TInt矢量的類,並且有一個方法Add(TInt & Val)。 在C#中,我只能調用此方法爲:
TIntV Arr;
Arr.Add(new TInt(3));
任何幫助將不勝感激。
格里
感謝您的信息。我知道我可以對生成的.cs文件進行這樣的修改,但是有沒有辦法告訴SWIG自動包含這些代碼?每次修改C++代碼時,我都不想重新編輯生成的.cs文件。 –
是的,我認爲是。只需將隱式運算符的內容放入部分類中,並告訴SWIG爲'TInt'生成部分類。 – sloth