摘要:条款09:绝不在构造和析构过程中调用virtual函数例子:#include#includeusing namespace std;class Base{public: Base(){ test(); } virtual void test(){ cout << "Base test" << end...
阅读全文
摘要:条款05:了解C++默默编写并调用哪些函数1、如果你自己没声明,编译器就会为类声明(编译器版本的)一个拷贝构造函数,一个拷贝赋值操作符和一个析构函数。此外如果你没有声明任何构造函数,编译器也会成为你声明一个默认构造函数。所有这些函数都是public且inline。惟有当这些函数被需要(被调用),它们...
阅读全文
摘要:条款01:视C++为一个语言联邦1、C++可以分为四个主要的次语言:1)C。说到底C++仍是以C为基础。区块,语句,预处理器,内置数据类型,数组,指针统统来自C。2)Object-Oreinted C++。这一部分是面向对象设计之古典守则在C++上的最直接实施。类,封装,继承,多态,virtual函...
阅读全文
摘要:1、 所谓声明式(declaration)是告诉编译器某个东西的名称和类型,但略去细节。所谓定义式(definition)是提供编译器一些声明式所遗漏的细节。对对象而言,定义式是编译器为此对象拨发内存的地点。对function或function template而言,定义式提供了代码本体。对clas...
阅读全文