C++中的结构体

结构体

1、概述:

对于结构体来讲,C语言当中就存在了,可以说它是类的原型,类可以说就是源于此由来,结构体与类最普通的有两点区别,第一是关键字不同,第二结构体中默认的访问属性是public,而类的默认访问属性是private。


2、特点

a).C++中当定义结构体变量时,可以省略关键字struct(指定义结构体变量的时候,可以省略结构体关键字struct);

b).而在C语言当中定义了结构体,在通过结构体定义结构体变量的时候,不能省略关键字struct.

c).此外,C++中的结构体中还可以定义函数,而C语言不行。


3、定义格式

struct 结构体名

{

     //结体成员,可以是成员变量,也可以是成员函数哦

}; // “;”这个分号不能丢哦,要记得


4、例子代码:

struct Person
{
public:
	char sName[60];
	int nAge;
	void show()
	{
		cout<<"我是: "<<sName<<"我今年: "<<nAge<<"岁了,正在吃香喝辣的!"<<endl;
	}


}; //;不能丢


void StructFun2()
{
	struct Person px = {"张飞",30}; //c type
	px.show();


	Person pp = {"weikangc",26}; //c++ type
	pp.show();
}


void StructFun()
{
	struct Student
	{
		char Name[32];
		int  Age;
		
		void SetName(char* chName)
		{
			memset(Name,0,32);
			strcpy(Name,chName);
		}
		
		void SetAge(int nAge)
		{
			Age = nAge;
		}
		
		void ShowInfo()
		{
			cout<<"Name :"<<Name<<" Age: "<<Age<<endl;
		}
	};
	
	struct Student stu = {"weikangc",26};		//C语言方式
	Student stu2 = {"weikangc",27};				//C++语言方式.
	
	
	stu.ShowInfo();
	stu2.ShowInfo();
	
	stu.SetName("guoxiaoheng");
	stu.SetAge(25);
	stu.ShowInfo();
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值