文件名称:避免在构造函数和析构函数中调用虚函数-*重构*改善既有代码的设计(带完整书签)
文件大小:1.28MB
文件格式:PDF
更新时间:2024-06-27 17:56:07
C++ 编程规范
规则4.11 避免在构造函数和析构函数中调用虚函数 说明:在构造函数和析构函数中调用虚函数,会导致未定义的行为。 在C++中,一个基类一次只构造一个完整的对象。 示例:类BaseA是基类,DeriveB是派生类 class BaseA //基类BaseA { public: BaseA(); virtual void log() const=0; //不同的派生类调用不同的日志文件 }; BaseA::BaseA() //基类构造函数 { log(); //调用虚函数log }