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新标准规定的。
这次学的知识数据结构的简单使用,后面还会有结构体和类的详细介绍。
比如,一个类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新标准规定的。
这次学的知识数据结构的简单使用,后面还会有结构体和类的详细介绍。
相关文章推荐
- Struct结构体是C/C++语言中用来自定义数据类型的
- C++中的自定义数据类型(结构体)解析
- C/C++学习笔记16:常见数据类型的大小
- C++自定义数据类型之结构
- 自定义数据类型 C++ 结构体类型 共同体类型 枚举类型 类类型{}
- c/c++: uint8_t uint16_t uint32_t uint64_t size_t ssize_t数据类型
- 一个使用c++在lua中创建自定义数据类型的简易方法
- C++学习笔记(第七章 自定义数据类型 结构体应用 之二)
- 自学C++之自定义数据类型与自定义类之数组使用4例
- C++自定义数据类型之枚举
- C/C++开发语言系列之16---C++不同类型数据间的转换
- C++数据类型:基本数据类型 构造数据类型(自定义数据类型)
- C++内嵌数据类型与自定义包裹类
- C++学习笔记(第七章 自定义数据类型 结构体应用 之三)
- 每日一课(16/75)联合类型和记录类型 还有数据类型的自定义typedef
- C++ 自定义数据类型:结构体,共用体,枚举
- C++自定义数据类型之指针
- c/c++: uint8_t uint16_t uint32_t uint64_t size_t ssize_t数据类型
- C++ map以自定义数据类型做键值
- c/c++: uint8_t uint16_t uint32_t uint64_t size_t ssize_t数据类型