自学C++小记1

自学C++小记1

c++支持struct关键字,它也可以定义类类型。struct关键字是从C语言中继承过来的。

struct和class的区别

如果使用class来定义类,那么定义在第一个访问标号前的任何成员都隐式指定为private,也就是说,如果你定义了一个类,然后定义了第一个成员,这个成员既不写public,也不写private,那么这个成员默认就是private的;如果使用struct关键字,那么这些成员都是public。使用class还是使用struct关键字来定义类,仅仅影响默认的初始访问级别。

头文件用于声明而不是用于定义

首先:对于头文件不应该含有定义这一规则,有三个例外。头文件可以定义类、值在编译时就已知道的const对象和inline函数。这些实体可以在多个源文件中定义,只要每个源文件中的定义是相同的。

定义和声明的区别:定义只可以出现一次,而声明则可以出现多次。下列语句是一些定义,所以不应该放在头文件里:

 

extern int val=10;
double speed;


虽然val声明为为extern,但是它有初始化,代表这个语句是一个定义语句。speed的声明虽然没有初始化,但也是一个定义,因为没有关键字extern。同一个程序中有两个以上文件含有上诉任意一个定义都会导致重定义链接错误。

因为头文件包含在多个源文件中,所以不应该含有变量或函数的定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值