C++中结构体

2018-08-07  本文已影响15人  夕阳下的不回头

C++中结构体并不是C中的结构体了

C++的结构体更像是一种特殊的类

他与类一样  可以有public private protect三种类型的变量和函数

但是默认为public属性(类里是默认为private)

结构体是一种特殊形态的类

与类的唯一区别:类的缺省访问权限是private,结构体的缺省访问权限是public

结构体存在的主要原因:与C语言保持兼容

什么时候用结构体而不用类

定义主要用来保存数据、而没有什么操作的类型

人们习惯将结构体的数据成员设为公有,因此这时用结构体更方便

结构体的定义

struct 结构体名称 {

公有成员

protected:

    保护型成员

private:

    私有成员

};

结构体的初始化

如果一个结构体的全部数据成员都是公共成员,并且没有用户定义的构造函数,没有基类和虚函数(基类和虚函数将在后面的章节中介绍),这个结构体的变量可以用下面的语法形式赋初值

类型名 变量名 = { 成员数据1初值, 成员数据2初值, …… };

#include#include#includeusing namespace std;

struct Student { //学生信息结构体

int num; //学号

string name; //姓名,字符串对象,将在第6章详细介绍

char sex; //性别

int age; //年龄

};

int main() {

Student stu = { 97001, "Lin Lin", 'F', 19 };

cout << "Num:  " << stu.num << endl;

cout << "Name: " << stu.name << endl;

cout << "Sex:  " << stu.sex << endl;

cout << "Age:  " << stu.age << endl;

return 0;

}

运行结果:

Num:  97001

Name: Lin Lin

Sex:  F

Age:  19

上一篇下一篇

猜你喜欢

热点阅读