由於剛學習c++, 乙個很傻的錯誤等到一點多才解決, 函式需要返回乙個cstringarray的型別, 剛開始我是這樣寫的:
cstringarray printers::getprinters()
} deletepbuffer;
return lvret;
}
呼叫:
printers lvprinters;
cstringarray lvitems = lvprinters.getprinters();
結果編譯不通過, 顯示:
查了很久, 最後發現類的例項不能用函式直接返回, 於是改為傳址引數的方法樣就可以了:
bool printers::getprinters(cstringarray& pvout)
} deletepbuffer;
return true;
}
呼叫:
printers lvprinters;
cstringarray lvitems;
lvprinters.getprinters(lvitems);
試了一下,還可能用指標的方法直接返回:
cstringarray* printers::getprinters()
bool printers::getprinters(cstringarray& pvout)
} deletepbuffer;
return true;
}
呼叫:
cstringarray* lvitems = lvprinters.getprinters();
for (int i = 0; i < (*lvitems).getcount(); i++)
if (cb_printers.getcount()>0)
delete lvitems; //因為前面函式裡面是顯式的new了乙個物件,這裡需要手動刪除它
OC 學習 類方法 例項方法
方法是類的行為,寫在介面和實現兩個檔案中。在介面部分宣告方法,在實現部分實現方法。1 類方法與例項方法 objective c中的類可以宣告兩種型別的方法 例項方法和類方法。例項方法就是乙個方法,它在類的乙個具體例項的範圍內執行。也就是說,在你呼叫乙個例項方法前,你必須首先建立類的乙個例項。而類方法...
類的封裝例項1
package student.com 專業類 author administrator public class subject 帶參建構函式,實現對屬性的全部賦值 public subject string sub name,string sub id,string sub year,stude...
「當類的例項方法比例項建構函式先執行」
繼承 多型 code class test 可以除錯一下走走流程 abstract class father public virtual void print 多型,不會被執行到 class son father public override void print 執行結果 in class s...