摘要:
无参数的构造函数适合没初始化值的初始化对象,而引用拷贝适合创建对象时用另一个对象对其初始化,如果此时用的是浅拷贝则释放一个对象内存时系统会释放2次从而出错(因为它指向同一个内存),深拷贝就不存在这个问题,各自都有自己的数据。class Array 2 { 3 public: 4 Array(){m_ 阅读全文
摘要:
在C++中数组和向量都是多同类元素的集合,他们也有很明显的区别 1 数组属于静态分配,编译之前必须知道数组的大小,一旦确定就不能更改;2个数组之间不能直接赋值实现拷贝,而必须显式用for或者拷贝函数拷贝。数组名实际是个地址,sizeof(数组名)当数组名是实参时表示的是数组的真实字节数,而如果在函数 阅读全文
摘要:
继承有共有的、私有的、受保护的、虚继承等四种方式: 4 虚继承:因为多重继承和多继承的存在,会出现一种菱形的继承:农民类和工人类继承了人类,而农民工类继承自农民类和工人类,这样农民工类中就会出现2份人类的拷贝,出现冗余;通过虚继承可以解决这个问题:即让 农民类和工人类虚拟继承人类;农民类再多继承农民 阅读全文
摘要:
C++的struct对C做和很多补充,里面可以放函数(构造函数和虚函数),也可以同struct和class的继承,在C++中也完全可以替代class.他们之间的主要区别: 1 calss默认是私有继承;而struct是public继承 2 class可以有定义模板参数,struct不能 3 stru 阅读全文
摘要:
通俗说法: 如果将类的封装比喻成一堵墙的话,那么友元机制就像墙上了开了一个门,那些得 到允许的类或函数允许通过这个门访问一般的类或者函数无法访问的私有属性和方法。友元机制使类的封装性得到消弱,所以使用时一定要慎重。 友元只授权特有对象访问自己(类中)的私有函数或数据,同时避免频繁调用的处理器开销。 阅读全文