C++中,什么是复合类型?
刚开始,还以为自定义的类是复合类型。查了C++ primer才知道复合类型不是类,在p51页定义为:用其它类型定义的类型。个人理解为:不是基本类型和用户自定义类型。
在C++中类型大致可以分为三种:
一、内置类型
如int, char, float, bool, void等。内置类型是最基本的类型。
二、复合类型
复合类型:用其它类型定义的类型。有三种复合类型:引用,指针,数组(P51、P95)。
三、类类型
就是类。比如string以及自己定义的类。(struct和union都是一种特殊的类类型P56 & P662)
四、enum类型
Enum提供了另一种创建符号常量的方式,这种方式可以代替const。
为什么这里要将enum类型专门分为一类呢?
在C++ primer中没有说明enum是类类型,但是是用户自定义类型。
同时,在14章中说明:重载操作符必须具有至少一个类类型 或 枚举类型的操作数,这条规则强制重载操作符不能重新定义用于内置类型对象的操作符含义。
参考:
http://blog.csdn.net/pyjfoot/article/details/7404492
http://blog.csdn.net/weiwenhp/article/details/8476767
http://zhidao.baidu.com/link?url=eXcXArD3yQT-zh9tGqVbmbkJN3XKwUgZ-97jRnVyAjbs5sECTAz7e1mzqH3i1GM9d0SDdWzr2nSs5CixPqMGeq