码迷,mamicode.com
首页 > 编程语言 > 详细

C++笔记十二:C++对C的扩展——struct关键字类型增强

时间:2018-04-30 17:52:47      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:tsp   集合   jpg   names   bsp   ace   关键字   分享图片   AC   

C语言的struct定义了一组变量的集合,C编译器并不认为这是一种新的类型。

 

C++中的struct是一个新类型的定义声明。

 

struct Student

{

char name[100];

int age;

};

void main()

{

Student s1={"wang",1};

Student s2={"wang",2};

}

 

 

上面程序我们用.c文件,编译报错。

这个时候c编译器不认为Student是一种新的类型,我们必须在Student前面加上struct关键字!

 

struct Student

{

char name[100];

int age;

};

void main()

{

struct Student s1={"wang",1};

struct Student s2={"wang",2};

}

 

 

C++对struct关键字进行了功能增强。

我们将同样的在c编译器下无法编译的程序放到.cpp文件中,发现是可以编译通过的!也就是说在C++中认为struct定义了一个新的类型,这个新的类型可以来定义新的变量。

 

 

#include<iostream>

using namespace std;

 

struct Student

{

char name[100];

int age;

};

void main()

{

Student s1={"wang",1};

Student s2={"wang",2};

system("pause");

}

 

 

另外呢,C++不单对struct关键字进行了类型增强,struct关键字和class关键字完成的功能是一样的,当然也有不一样的地方,区别后面再说。

在结构体里面也可以加上访问数据权限:public、protected等。

 

 

#include<iostream>

using namespace std;

 

struct Student

{

public:

char name[100];

int age;

private:

int a;

};

void main()

{

struct Student s1

system("pause");

}

 

 

 

技术分享图片

 

技术分享图片

 

长按解锁

 

解锁更多精彩内幕

 

技术分享图片

依法编程

微信:Lightspeed-Tech

技术驱动生活

 

 

C++笔记十二:C++对C的扩展——struct关键字类型增强

标签:tsp   集合   jpg   names   bsp   ace   关键字   分享图片   AC   

原文地址:https://www.cnblogs.com/tyyhmtyyhm/p/8973877.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!