虚继承(virtual inheritance):
语法:class SubClass : virtual public BaseClass{}
虚继承的类(SubClass)没有父类(BaseClass)的副本,在SubClass的子类中,构造函数应该调用BaseClass的构造函数。
程序的错误:编译时错误、运行时错误。
动态内存:
没有名字,只有地址,运行时分配。
delete只释放内存,指针仍在,指针值仍在。
数组名和下标操作符的组合可以看成是:数组基地址和对应的指针运算。
从函数或方法返回内存:在函数里调用new语句为某对象或某种数据类型分配一块内存,,再把这块内存块的地址返回给程序的主代码。
不可以返回局部变量的地址
函数指针:指向函数首地址的指针叫函数指针
指针函数:可以返回指针类型数据的函数
副本构造器:
会逐条复制对应的属性,但是指针呢???复制之后,复制的是地址,那么会有两个对象控制这块地址。。。。
对操作符进行重载,重载赋值操作符(“=”),在其中对指针进行处理:分配新的位置,把值拷贝过去。
声明时时赋值:MyClass(const MyClass &rhs),这个构造器需要一个MyClass类型的引用作为输入参数,就像赋值操作符一样,因为是构造器故不需要返回类型。
动态分配的内存块是没有作用域的,但是用来保存地址的指针变量是受作用域影响的。
时间: 2024-10-02 05:16:11