您的位置:首页 > 编程语言 > C语言/C++

c++(16)自定义数据类型

2016-09-22 18:15 288 查看
数据结构是把一组相关的数据元素组织起来,然后使用它们的策略和方法。
比如,一个类Person将一个人的身份证号、姓名、性别以及住址等数据组织在一起,提供<<、>>、=、+=等运算,那么Person类就是一个数据结构。

这次我们筹划一个数据结构不带任何运算、将其命名为Book。

看例子:

#include <iostream>
#include <string>
using namespace std;

struct Book{
int bookId;
<span style="white-space:pre"> </span>string bookName{""};
<span style="white-space:pre"> </span>double revenue = {0};
};//类的定义以关键字struct开始,后接类名,类体(类体可以为空)

int main()
{
int i;
Book *b = new Book();
cout << "i:" << i << endl;
cout << "bookId:\t\t" << b->bookId << endl;
cout << "bookName:\t\t" << b->bookName << endl;
cout << "revenue:\t\t" << b->revenue << endl;
}


运行结果:



其中,c++11新标准规定,可以为数据结构的数据成员提供一个类内初始值(用于初始化类内数据成员)。没有被初始化的数据成员将被默认初始化。

(尴尬的是,在我的程序里面,没有被初始化的数据成员却没有被默认初始化,试了好几遍,都是一样的编译和运行结果。在例子中,普通的变量i没有被初始化,但是在编译的时候被默认初始化为0。但是在数据结构内的数据成员却没有被morning初始化。以后再找原因吧)

注意:使用花括号初始化是c++11新标准规定的。

这次学的知识数据结构的简单使用,后面还会有结构体和类的详细介绍。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  结构体 数据结构 c++