C++
文章平均质量分 65
宴之敖者、
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++——模板
摘要:C++模板包括函数模板和类模板,通过template关键字定义,可减少代码重复。函数模板让编译器自动生成不同类型参数的函数,但需注意实例化歧义问题,可通过强制转换或显式实例化解。类模板能存储多种数据类型,但必须显式实例化。当模板与普通函数同名时,优先调用普通函数。模板将编程工作量转移给编译器,提高代码复用性。原创 2025-09-18 09:50:34 · 315 阅读 · 0 评论 -
C++内存管理
char2也是在栈上面,字符串确实是存放在常量区的,但是这里表示的意思是讲字符串存放进数组里,而*char也表示首元素的地址,数组开好后就放在了栈上面,所以*char就是存放在栈上面的。因为系统在开辟空间时会多开4个字节,来存储要调用多少次构造函数,在delete时,指针本来指向数组的首位,这时就会向前移动四个字节,取出里面的数字,就能得出要调用多少次析构函数了。pchar3是一个局部变量,是存放在栈上面的,而*pchar3则是指pchar3所指向的那块空间,是存放在常量区的。原创 2024-07-19 14:39:18 · 433 阅读 · 0 评论 -
C++友元
至于为什么要加const是因为当传第二个参数2时,会先产生一个临时对象,这个临时对象具有常性,所以使用引用传参时才需要加上const。这里的意思是Date是Time的友元,那么就能在Date里访问Time,但是Time并不能访问Date。另外,如果内部类是共有的就可以直接使用,若是私有的就不能使用了,说明内部类也受访问限定符的限制。这种友元关系是单向的,我是你的友元,你不一定是我的友元。这里的类B是类A的一个内部类,还可以看出A的大小只有4。就能发现,类B跟类A在空间独立的,只是受A的类域限制。原创 2024-07-19 14:34:11 · 257 阅读 · 0 评论 -
const修饰的成员,静态成员和匿名对象
这里调用了13次构造函数,除了前面的3次,还有创建数组的10次,这个数组里面10个对象,就会调用10次构造函数,自定义类型的数组是会调用构造函数进行初始化的。就可以把const加到这个位置,这时的函数叫cosnt成员函数,这样就可以修饰this指针了。其实是出现了权限的放大,这里传给print函数时的类型是A的this指针,但是aa的类型是const修饰后的A的指针。如果定义全局变量就会出现谁都能修改的问题,而C++讲究的是封装,所以全局变量并不靠谱。相对的,在静态成员函数里并不能访问非静态的成员。原创 2024-07-19 14:31:25 · 303 阅读 · 0 评论 -
运算符重载和初始化列表
但由于调用函数是上面的,那么具体使用就变成了下面的,因为ostream类不能修改,所以就只能写在日期类里面了,但是写在日期类里面的话,日期类对象就抢占了第一个参数,所以cout就只能写在后面了。默认生成的构造函数对内置类型不作处理,这里的_x成员变量是int类型的,编译器也不会作处理,但是这是个const修饰的变量,const修饰的变量只读不写,必须在定义的位置就初始化。这里的两行代码也是拷贝构造;i并不是直接转换成a的,而是会产生一个double类型的临时变量,i的值赋给临时变量,再由临时变量赋值给a。原创 2024-07-19 14:24:30 · 650 阅读 · 0 评论 -
类和对象——开始步入正轨
主要介绍了类和对象原创 2024-03-23 17:53:12 · 664 阅读 · 1 评论 -
内联函数、auto关键字、范围for和nullptr
内联函数!原创 2024-03-23 17:10:10 · 349 阅读 · 1 评论 -
引用(李逵?李鬼!)
引用,把李逵叫成李鬼原创 2024-03-19 13:29:10 · 537 阅读 · 1 评论 -
缺省参数与函数重载
主要了解了缺省参数和函数重载原创 2024-03-17 21:14:06 · 502 阅读 · 1 评论 -
初识C++--命名空间?
从C衔接到C++,引入命名空间的概念(适合有一定C基础的人)原创 2024-03-11 21:30:49 · 219 阅读 · 1 评论
分享