tip9:绝不在构造和析构函数中使用virtual函数
来源:互联网 发布:化妆品成分分析软件 编辑:程序博客网 时间:2024/05/16 15:16
class Transaction
{
public:
Transaction();
//~Transaction();
virtual void logTranscation() const = 0;
};
Transaction :: Transaction()
{
....
logTranscation();
}
class BuyTransaction:public Transaction
{
public:
BuyTransaction();
~BuyTransaction();
virtual void logTranscation() const;
};
class SellTransaction:public Transaction
{
public:
SellTransaction();
~SellTransaction();
virtual void logTranscation() const;
};
现在执行 BuyTransaction b;
此时无疑会调用 BuyTransaction 的构造函数,但是得先调用base的构造函数,所以此时
会调用 logTranscation()函数,但是由于 logTranscation()函数是虚函数,而此时
BuyTransaction()函数还没有初始化,所以base的构造函数是不会下降到派生类函数的
析构函数也是同样的道理。
{
public:
Transaction();
//~Transaction();
virtual void logTranscation() const = 0;
};
Transaction :: Transaction()
{
....
logTranscation();
}
class BuyTransaction:public Transaction
{
public:
BuyTransaction();
~BuyTransaction();
virtual void logTranscation() const;
};
class SellTransaction:public Transaction
{
public:
SellTransaction();
~SellTransaction();
virtual void logTranscation() const;
};
现在执行 BuyTransaction b;
此时无疑会调用 BuyTransaction 的构造函数,但是得先调用base的构造函数,所以此时
会调用 logTranscation()函数,但是由于 logTranscation()函数是虚函数,而此时
BuyTransaction()函数还没有初始化,所以base的构造函数是不会下降到派生类函数的
析构函数也是同样的道理。
0 0
- tip9:绝不在构造和析构函数中使用virtual函数
- 条款9:绝不在构造函数和析构函数中调用virtual 函数
- Effective C++ Item 09-绝不在构造函数和析构函数中调用virtual函数
- Effective C++ 笔记之六 绝不在构造和析构函数中调用virtual函数
- 绝不在构造和析构函数中调用 virtual 函数
- 浅谈C++--绝不在构造和析构函数中调用virtual函数
- 【寒江雪】绝不在构造和析构函数中调用virtual函数
- Effective C++笔记09:绝不在构造函数和析构过程中调用virtual 函数
- 【Effective_c++】条款09:绝不在构造和析构函数中调用virtual函数
- 条款09:绝不在构造和析构过程中调用virtual函数
- 条款09:绝不在构造和析构过程中调用virtual函数
- 条款9:绝不在构造和析构过程中调用virtual函数
- 条款9:绝不在构造和析构过程中调用virtual函数
- item9: 绝不要在构造和析构过程中调用virtual函数
- Effective C++ Item 9 绝不在构造和析构过程中调用virtual函数
- 条款09:绝不在构造和析构过程中调用virtual函数
- Effective C++:条款09:绝不在构造和析构过程中调用virtual函数
- 绝不在构造和析构过程中调用virtual函数 UC2014年实习生笔试题
- hadoop 框架中知识的一点总结
- 【最大流】HDU 4292 Food
- Codeforces Round #260 (Div. 2) A. Laptops
- fzu-1753 Another Easy Problem-快速求N!中有多少个p
- Win32汇编之创建窗口
- tip9:绝不在构造和析构函数中使用virtual函数
- UVa10243 - Fire! Fire!! Fire!!!(dp)
- JAVA中this用法小结
- POJ训练计划3096_Surprising Strings(STL/map)
- 教你给零食分个健康等级
- 设计模式-行为模式之观察者模式
- jquery几种常用框架比较
- C语言中的声明和定义
- POJ Octal Fractions(JAVA水过)