C++ Primer读书笔记第二章⑥

C++ Primer

第二章 变量和基本类型

自定义数据结构

class Primer  
{  
    std::string sBookNo;  
    std::string sAuthor;  
    double dRevenue;  
};

自定义数据结构以关键字class(或struct)开始,紧跟着类名和实体,最后的分号不能省略

自定义数据结构是自然事物的抽象表达,比如我们可以定义一个数据结构用来表示人当我们关注人的姓名、身高、体重时,数据结构可以这样定义:

class Person  
{  
    std::string sName;  
    double dHeight;  
    double dWeight;  
};

数据成员

  • 数据成员定义了类的对象的具体内容
  • 每个对象有自己的一份数据成员拷贝

头文件 头文件通常包含那些只能被定义一次的实体,如类、const变量和constexpr变量等

头文件存在多次包含的情况(直接和间接),编译器会把头文件中的内容拷贝到包含文件中,而我们又要确保头文件中的内容不被多次定义。

这需要用到头文件保护符

//SalesData.h
#ifndef SALES_DATA_H  
#define SALES_DATA_H  
struct Sales_data  
{  
};  
#endif

预处理器在这里发挥了很大的作用。 ->#ifndef是“如果没有定义”的意思,SALES_DATA_H是“预处理变量”,

  1. 如果没有定义SALES_DATA_H,定义SALES_DATA_H,执行下面的代码直到endif
  2. 如果SALES_DATA_H已经定义过,则后面的代码不会执行。

这样确保头文件被多次包含时,其中的内容不会被多次定义。 关于自定义数据结构,我们后面还会详细讲解,不清楚的地方先别急。

#C++工程师#
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 18:30
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务