的代碼行,我需要從C翻譯++到C#:C#:如何將轉換爲const覆蓋從C++到C#
void GetAnalysisModeName(ON_wString& name) const;
我已經試過:
public override void GetAnalysisModeName(string name){}
但它告訴我返回類型必須是一個字符串。
的代碼行,我需要從C翻譯++到C#:C#:如何將轉換爲const覆蓋從C++到C#
void GetAnalysisModeName(ON_wString& name) const;
我已經試過:
public override void GetAnalysisModeName(string name){}
但它告訴我返回類型必須是一個字符串。
直轉換將是:
public void GetAnalysisModeName(ref string name)
{
}
但它看起來像你還試圖重寫C#類的內在的東西。
通過消息判斷返回類型必須是字符串,我會說你重寫的方法的簽名和你發佈的C++方法的簽名不匹配。
編輯
這其實是一種錯誤的理解。我再次檢查了Rhino API。您正在使用.NET SDK。您的C++示例使用C++ SDK。這兩個SDK有不同的簽名。爲了正確覆蓋.NET版本,您需要:
public string GetAnalysisModeName(){ }
我建議您下載。 NET SDK Documentation for Rhino,以便您將其作爲參考。它還會給你一個簡單的描述,說明實施時該方法應該做什麼。
如果你正在重載的函數返回一個字符串,你的函數必須返回一個字符串。如果您沒有基礎功能,請從聲明中刪除覆蓋。
public override string GetAnalysisModeName(string name){}? – Gage 2010-10-06 13:15:27