栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++类和对象

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++类和对象

文章目录
  • 类和对象
    • 访问权限
    • 构造函数
    • 析构函数
    • 构造函数的分类及调用
    • 构造函数调用方法
    • c++ 中拷贝构造函数的调用时机

类和对象 访问权限

三种
公共权限public:
成员 类内可以访问 类外可以访问

保护权限protected:
成员 类内可以访问 类外不可以访问 儿子可以访问父亲中的保护内容

私有权限private:
成员 类内可以访问 类外不可以访问 儿子不可以访问父亲中的保护内容

c++ 中struct和class的区别
struct 默认权限是 public
class 默认权限是 private

构造函数

构造函数:类名(){}
1没有返回值
2函数名称与类名相同
3构造函数可以有参数 因此可以发生重载
4无需手动调用 会自动调用一次

析构函数

析构函数:~类名(){}
1没有返回值
2函数名称与类名相同 在名称前面加上符号~
3析构函数不可以有参数 因此不可以发生重载
4程序在对象销毁前 自动调用

构造函数的分类及调用

按照参数分:
1有参构造 和无参构造(默认构造函数)

按照类型分:
1普通构造 和拷贝构造

person()
{
	cout<<"无参构造函数被调用"<
	age =a;
	cout<<"普通构造函数被调用"<
	age =p.age;
	cout<<"拷贝构造函数被调用"< 

调用
注意:调用默认构造函数时 不要加() 编译器会误认为是一个函数声明 不会认为是在创建对象

构造函数调用方法
void test()
{
	//1括号法
	person p1;//默认构造函数)
	person p2(10);//有参构造函数
	person p3(p2);//拷贝构造函数
	
	//2显示法
	person p1;
	
	person p2=person(10);//有参构造
	person p3=person(p2);//拷贝构造
	person(10);//匿名对象 特点 :当前执行结束后 系统会立即回收掉匿名对象
	
	注意事项2:不要用拷贝构造函数 初始化匿名对象
	//3 隐式转换法
	
	person p4=10;//相当于person p4= person(10);
	person p5=p4;//相当于person p5= person(p4);
	

	
}
c++ 中拷贝构造函数的调用时机
1 使用一个已经创建完的对象来初始化一个新的对象
void test()
{
	person p1(20);
	person p2(p1);
}
2 值传递的方式给函数参数传值
void test(person p)
{
	
}
3 值方式返回局部对象
person test()
{
	person p;
	return p;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/960884.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号