我可以在函數聲明(類的一部分)中使用this
來指定默認參數嗎?在函數聲明中使用「this」(作爲默認參數)
實施例:
class Object {
Object::Object(){
this->color = rand(); //let's pretend that rand() will generate a random integer and that fillBg can draw a color given an integer.
}
Object::fillBg(int color = this->color){
//do stuff
}
}
...所以當一個對象是由這個類Object
的,隨機顏色將被繪爲對象的背景(除非你通過另一種顏色)。
你爲什麼不試試看? – Ashalynd
@Ashalynd已經做到了,它說我不能像這樣使用「this」,所以我在這裏只是想問一下,如果我不能像這樣以任何方式使用它,或者如果有一些黑暗的黑客我可以使用。 – alexandernst
將默認參數設置爲-1,然後檢查方法主體中的「if(color == -1)color = this-> color」是什麼問題? – i486