C++對象析構後調用虛方法和普通方法的區別
Person類say方法的原型如下:
void say();
Person *p = new Person;//創建一個對象
delete p;//到這裏對象被析構
p->say();//Person對象的say方法仍然可以調用
如果把上面的say方法換成如下代碼:
virtual void say();
對象被析構後再調用say方法就會報錯。
C++對象析構後調用虛方法和普通方法的區別
Person類say方法的原型如下:
void say();
Person *p = new Person;//創建一個對象
delete p;//到這裏對象被析構
p->say();//Person對象的say方法仍然可以調用
如果把上面的say方法換成如下代碼:
virtual void say();
對象被析構後再調用say方法就會報錯。
對於C/C++語言來講, const就是隻讀的意思,只在聲明中使用; static一般有2個作用,規定作用域和存儲方式.對於局部變量,static規
C++ explicit構造函數 explicit按字面意思是明確的,顯式的。在C++類中只要定義的構造函數編譯器就不會幫你生成默認構造函數。
爲什麼使用const?採用符號常量寫出的代碼更容易維護;指針常常是邊讀邊移動,而不是邊寫邊移動;許多函數參數是隻讀不寫的。c
//螺旋隊列.cpp// 21 22 ... ...// 20 7 8 9 10// 19 6 1 2 11// 18 5 4 3 12// 17 16 15 14 13//看