天天看點

虛函數指針 C++

調試時可以看到每個類對象的虛函數指針,這是由編譯器為每個對象配置設定的。

class VirtualTest {
public:
	virtual void vfunc1() { cout << "virtualTest::vfunc1()\n"; };
	virtual void vfunc2() {};
};

class DervVirTest :public VirtualTest {
public:
	void vfunc1() override { cout << "dervVirTest::vfunc1()\n"; };
};
int main() {
	VirtualTest vt1;
	VirtualTest vt2;
	DervVirTest dvt;

	return 0;
}
           

調試時類對象vt1,vt2,dvt 的成員變量如下圖:

虛函數指針 C++

繼續閱讀