摘要:
1.单个类模板的用法 2.继承类模板 3.模板类有缘函数的使用 阅读全文
摘要:
1.函数模板的工作原理/工作机制 编译器不是把函数模板处理成能够处理任意需要的函数;编译器从函数模板通过具体类型产生不同的函数; 编译器会对函数模板进行两次编译:在声明的地方对模板代码本身进行编译;在调用的地方对参数替换后的代码进行编译。 2.为什么函数模板和普通函数能进行重载; 因为编译器对函数模 阅读全文
摘要:
1.函数模板和普通函数在一起的研究 1) 2) 阅读全文
摘要:
int a[10];//请求分配40个字节的连续内存空间;a表示数组首元素地址,&a表示整个数组地址, 2.函数指针类型 3.回调函数的本质 阅读全文
摘要:
1.抽象类定义:含有纯虚函数的类成为抽象类。 阅读全文
摘要:
2.在构造函数中调用虚函数能实现多态吗? 2)实现原理 3.是否可以将类中的每个成员函数都声明成虚函数? 通过vptr指针调用重写函数是在程序运行是执行的,因此需要寻址操作才能确定需要被调用的函数,而普通成员函数的调用实在程序编译时就确定了函数的调用,在效率上,虚函数的效率要低很多。故:出于效率考虑 阅读全文
摘要:
1.多态定义:多态是指不同的子类在继承父类后,重写覆盖父类的方法;即:父类的一个方法,在继承的子类中表现出不同形式。 一种调用语句,有多种表现形式。 2.多态成立的3个条件: 1)要有继承;2)要有虚函数重写;3)父类指针/引用指向子类对象。 注意:virtual关键字修饰父类的成员函数;在继承子类 阅读全文
摘要:
1.多继承二义性产生的原因: 子类同时继承多个基类,而这些基类又有一个共同的基类,则导致在子类对象中调用父类成员时,调用不明确;即:二义性。 2.虚继承能解决的而已情况:有共同老祖宗的能解决二义性,没有共同老祖宗的不能用虚继承解决二义性,只能显示调用。eg:C c1;c1.B1::k这样调用多继承父 阅读全文
摘要:
1.面向对象程序设计有4个主要的特点:抽象、继承、封装、多态。 2.类和类之间的关系:包含关系;使用关系;继承关系。 3.继承的重要说明: 子类拥有父类的所有成员变量和成员函数; 子类可以拥有父类没有的成员方法和属性; 子类就是一种特殊的父类; 子类对象可以当作父类对象使用; 4.继承中的类型兼容性 阅读全文