2.6 自定义数据结构

本文介绍了C++中如何通过struct定义自定义数据类型Sales_data,包括类的内部初始化、使用方法以及编写头文件的注意事项。强调了头文件的预处理器功能,如防止重复包含和使用头文件保护符确保安全。同时,提到了预处理变量的特性及其在头文件保护符中的应用。
摘要由CSDN通过智能技术生成

C++允许用户以类的形式自定义数据类型

2.6.1 定义Sales_data类型

以关键词 struct  开始,紧跟类名和类体。

类内部定义的名字必须唯一,但是可以与类外部定义的名字重复。

 

类后面可以跟变量

 struct Sales_data{/*...*/} accum,trans,*salesptr;

所以

不要忘记在类定义后面加分号;;;;;;;;;;;;;;;

 

类数据成员

可以为数据成员提供一个类内初始值(in-class initializer)

没有初始化会被默认初始化为0,空字符串

 

2.6.2 使用Sales_data 类

略了(๑•̀ㅂ•́)و✧

 

2.6.3编写自己的头文件

类通常定义在头文件中,把头文件名字和类的名字写的一样

 

Note: 头文件一旦改变,相关的源文件必须重新编译以获取更新过的声明

 

预处理器概述

确保头文件多次包含仍能安全工作的通常技术是预处理器(preprocessor)

#include  预处理器看到就会用指定的头文件代替#include

c++还会用到的预处理功能是 头文件保护符(header guard),头文件保护符依赖于预处理变量。

预处理变量有两种状态:已定义和未定义。

#define 指令把一个名字设定为预处理变量

#ifdef 当且仅当变量已经定义时为真

#ifndef 当且仅当变量未定义时为真。

一旦为真,执行后续操作直至遇到 #endif

Warining : 预处理变量无视C++语言中关于作用域的规则

 

头文件保护符必须唯一

通常做法是将 头文件名命名保护符并大写

 

头文件没有包含在其他头文件中,也应该设置保护符

 

 #ifndef SALES_DATA_H

 #define SALES_DATA_H

 #include <>

 

 

........

 

 

#endif

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值