摘要:
菱形继承问题样例:#include using namespace std;class A{ public: int x=4; virtual int getx() { return x; }};class B:public A{};class C:public A{};class D:public B,public C{};int main(){ ... 阅读全文
posted @ 2019-09-17 20:21
西*风
阅读(586)
评论(0)
推荐(0)
摘要:
C++目前使用的对象模型: 此模型下,nonstatic数据成员被置于每一个类的对象中,而static数据成员则被置于类对象之外,static和nonstatic函数也都放在类对象之外(通过函数指针指向),而对于virtual函数,则通过虚函数表+虚函数指针来支持: 1)每个类生成一个表格,称为虚表 阅读全文
posted @ 2019-09-17 20:09
西*风
阅读(812)
评论(0)
推荐(0)
摘要:
继承:通过扩展已有的类来获得新功能的代码重用方法组合:新类由现有类的对象合并而成的类的构造方式何时用继承?何时用组合?1.如果二者间存在一个“是”的关系,并且一个类要对另外一个类公开所有接口,那么继承是更好的选择2.如果二者间存在一个“有”的关系,那么首选组合ps:没有找到极其强烈无法辩驳的使用继承的利用的时候,一律采用组合组合体现为现实层面,继承主要体现在扩展方面如果并不是需要一个类的所有东西(... 阅读全文
posted @ 2019-09-17 15:18
西*风
阅读(1536)
评论(0)
推荐(0)
摘要:
static关键字的用法: 1)将全局变量修饰为静态全局变量 存储在静态存储区,整个程序运行期间一直存在 静态全局变量在声明它的文件之外是不可见的,只要声明它的文件可见,而普通的全局变量则是所有文件可见 2)将局部变量修饰为静态局部变量 存储在静态存储区 作用域仍为局部作用域,但是当局部变量离开作用 阅读全文
posted @ 2019-09-17 11:21
西*风
阅读(1666)
评论(0)
推荐(0)

浙公网安备 33010602011771号