上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 23 下一页
摘要: c++会提供特殊的对象指针,this指针,指针指向被调用的成员函数所属的对象 this指针是隐含每一个非静态成员函数内的一种指针this指针不需要定义,直接使用即可 this指针的用途:当形参和成员变量同名时,可用this指针来区分,解决名声冲突在类的非静态成员函数中返回对象本身,可使用return 阅读全文
posted @ 2022-04-09 22:06 纸包鱼 阅读(65) 评论(0) 推荐(0)
摘要: c++类中,成员变量和成员函数分开存储,只有非静态成员才属于类的对象中的,因为静态成员在一个对象之上,相当于总揽全局 如果用sizeof来计算类的大小,函数的大小是不计算在内的,只计算成员变量的 如果空类也有一个字节,为了区分不同的空对象所站的位置。 计算类大小的时候,静态变量同样不计算在内,因为静 阅读全文
posted @ 2022-04-09 21:47 纸包鱼 阅读(38) 评论(0) 推荐(0)
摘要: 静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员静态成员分为: 静态成员变量所有对象共享同一份数据在编译阶段分配内存类内声明,类外初始化静态成员函数所有对象共享同一个函数静态成员函数只能访问静态成员变量 要注意定义在main( )函数之前的全局对象、静态对象的构造函数在main 阅读全文
posted @ 2022-04-09 21:36 纸包鱼 阅读(139) 评论(0) 推荐(0)
摘要: 类中成员可以是另一个类对象 构造顺序构造在其中的类对象,在构造自身,析构函数顺序相反,线删除自身,再删除其中的对吸纳风格 阅读全文
posted @ 2022-04-09 21:30 纸包鱼 阅读(82) 评论(0) 推荐(0)
摘要: 构造函数():属性(值),属性(值),。。。{} 类中初始化函数的简化写法 阅读全文
posted @ 2022-04-09 21:19 纸包鱼 阅读(21) 评论(0) 推荐(0)
摘要: 浅拷贝,编译器提供的简单的复制拷贝操作 深拷贝,在堆区重新申请空间,进行拷贝 当有指针和堆区存在时浅拷贝可能会造成重复释放问题,这种时候要自己定义深拷贝函数防止出现错误 、/拷贝构造函数 Person(const Person& p) { //如果不利用深拷贝在堆区创建新内存,会导致浅拷贝带来的重复 阅读全文
posted @ 2022-04-09 19:32 纸包鱼 阅读(80) 评论(0) 推荐(0)
摘要: person(const person & p) {} 默认情况下,c++编译器至少给一个类添加3个函数1.默认构造函数(无参,函数体为空)2.默认析构函数(无参,函数体为空)3.默认拷贝构造函数,对属性进行值拷贝 构造函数调用规则如下:如果用户定义有参构造函数,c++不在提供默认无参构造,但是会提 阅读全文
posted @ 2022-04-09 19:13 纸包鱼 阅读(50) 评论(0) 推荐(0)
摘要: 两种分类方式:按参数分为: 有参构造和无参构造按类型分为: 普通构造和拷贝构造(const person &p)三种调用方式:括号法,通过()中的参数确定重载初始化函数调用哪一个,如果是默认构造函数的话不要加(),否则会被看为函数声明。显示法,显示说明变量的值,person p = person(p 阅读全文
posted @ 2022-04-09 19:06 纸包鱼 阅读(36) 评论(0) 推荐(0)
摘要: c++类中的构造函数用来初始化对象,在创建对象和赋值是使用 析构函数用来清理对象,在对象销毁前使用 一般会有编译器自动调用,如果有特殊要求可以手动实现 构造函数语法:类名(){}1. 构造函数,没有返回值也不写void2. 函数名称与类名相同3. 构造函数可以有参数,因此可以发生重载4. 程序在调用 阅读全文
posted @ 2022-04-09 18:42 纸包鱼 阅读(63) 评论(0) 推荐(0)
摘要: 定义了头文件include“head.h”,也确实加载了,但是一直显示头文件中声明的函数未定义,因为我定义到另一个cpp文件中了,vscode没有自动连接两个cpp文件,要手动添加,或者在tasks.json里边加 cd "d:\desk\cpp\" ; if ($?) { g++ c++_1-16 阅读全文
posted @ 2022-04-09 18:32 纸包鱼 阅读(591) 评论(0) 推荐(0)
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 23 下一页