摘要:
C++ 类型转换构造函数、 通过转换构造函数和类型转换运算符来做到类型转换、 主要功能是将其它类型的数据转换成该类类型的对象、 class t { public: //explicit//禁止隐式类型转换 explicit t(int x = 0) :m(x)//类型转换构造函数、可以将一个整型(i 阅读全文
摘要:
C++ 继承的构造函数、 一个类只继承其直接基类(父类)的构造函数、默认、拷贝、移动构造函数是不能直接被继承的、 using让某个名字在当前作用区域内可见、 class a { public: a(int a1,int a2,int a3){} }; class b :public a { publ 阅读全文
摘要:
C++ 移动构造函数和移动赋值运算符、 主要解决程序书写时效率问题、 移动并非是将内存中的数据移动到另一个地址中去、而是只是改变数据的所有者、 拷贝构造函数是左值引用即一个 & 而移动构造函数是右值引用即 && 移动构造函数和移动赋值函数应在移动后切断原对象和内存的关系、确保移动后原对象内容即使被销 阅读全文
摘要:
C++ 临时对象、 即临时变量、由系统和写代码时产生、可以通过优化代码来减少部分写代码时产生的临时变量、 栈常存放临时变量、栈上的临时变量一般是由系统自动产生的、 使用new产生的空间必须通过使用delete来释放、 产生临时对象 以传值的方式给函数传递参数、 class a { public: i 阅读全文
摘要:
C++ 左值和右值、 左值是能用在赋值语句等号左侧、代表一个地址、 为了对比左值所以出现了右值、与左值相反、 表达式先判断是否为左值、非左即右、没有其它选项、 左值可以当成右值使用、 a=a+1——a是左值不是右值、a在右边是所以a有右值属性(非右值属性)、a左边代表地址、右边代表值、 一个左值可以 阅读全文
摘要:
C++ 子类对象模型、 派生类包含多个组成部分(多个子对象)多个对象的内容不一定是要相联系、 含有子类自己定义的成员变量、成员函数的子对象、 子类继承基类的子对象、子对象包含基类定义的成员变量、成员函数、 子类 对象可以当成父类对象使用、因为派生类对象含有基类部分、 可以用基类指针new子类对象、编 阅读全文
摘要:
C++ RTTI是什么、 运行时类型识别、使程序能够使用基类的指针或引用来检查指针或者引用所指的对象的实际派生类型、 通过dynamic_cast运算符可以将基类(父类)指针或引用安全转换成派生类(子类)指针或引用、 typeid运算符、可以返回指针和引用所指向对象的实际类型、 ==基类中必须要有虚 阅读全文
摘要:
C++ 友元函数、 friend、友元函数声明不受public(公有)、protected(保护)、private(私有)、限制、 只要函数a成为类b的友元函数、函数a就可以访问b的所有成员(成员变量、成员函数)、 友元函数不属于类成员函数、 友元类、 类可以把其他类定义为友元类、 a类把b类定义为 阅读全文
摘要:
C++ 基类指针、派生类指针、 父类指针可以调用父类的成员函数、父类指针不可以调用子类的成员函数、 即调用父类又子类的同名同参函数的指针、类型必须是父类的类型、而且得在父类同名函数之前条件virtual声明声明成虚函数、 函数在父类中声明成虚函数则所有的子类中均为虚函数、 在子类函数声明中添加ove 阅读全文