C++
KeanuShelby
这个作者很懒,什么都没留下…
展开
-
C++学习-虚继承
在 Person.h 中给 Person 的构造函数增加默认值,比如「Person(const string &name = “shiyanlou”);在 HighStudent 的构造函数中调用 Person 的构造函数,即 …: Person(name), Student(name,age) …这里的基类1的构造函数初始化需要通过4进行,所以基类1的初始化路径为7->4->1,而不能直接7->1.要注意的是,在菱形继承中,基类的初始化只有两种方式。多重继承和菱形继承结合。原创 2024-03-26 19:58:23 · 170 阅读 · 1 评论 -
C++学习-对象数组
强调堆上申请空间与释放空间的问题,请注意一下代码与之前的异同之处,在销毁对象数组时使用的是 delete point;// 如果是自定义类作为参数时,建议使用引用的方式传入参数,如果该参数在函数中无需修改且没有输出,建议加上 const。来释放数组,会导致未定义行为(undefined behavior),因为这只能用于释放单个对象的内存,而非整个数组。系统自动销毁栈上对象数组,并且销毁对象数组时,每一个对象析构函数都会被执行。实例化对象数组时,每一个对象的构造函数都会被执行。原创 2024-03-20 11:32:25 · 144 阅读 · 1 评论 -
C++学习记录-指针
因为第一种是在定义变量时指定的,int *p=&po1的意思是指定指针变量p,赋值&po1给p。//指针变量 p 指向变量 po1 的地址。cout << "获取指针所指变量的值: "<<*p<<endl;cout << "获取指针的内存地址: "<<p<<endl;cout << "获取p的内存地址: "<<&p<<endl;//指针变量 p 指向变量 po1 的地址。p 表示指针变量 p 本身,即指针 p 所存储的内存地址。*p 表示指针 p 所指向的变量或对象的值。原创 2024-03-19 15:24:59 · 318 阅读 · 1 评论