类基础
来源:互联网 发布:java获取微信签名 编辑:程序博客网 时间:2024/05/29 17:52
类
类的定义和声明
最简单地来说,类就是定义了一个新的类型和一个新的作用域。
- 类成员
每个类可以没有成员,也可以定义多个成员,成员可以是数据,函数或类型别名。一个类可以包含公有的,私有的和受保护的部分。
构造函数
创建一个类类型的对象时,编译器会自动地使用一个构造函数来初始化改对象。构造函数是一个特殊的,与类同名的成员函数,用于给每个数据成员设置适当的初始值。
成员函数
在类内部,声明成员函数是必需的,而定义成员函数是可选的。在类内部定义的函数默认为inline。在类外部定义的成员函数必需指明他们是在类的作用域中。
成员函数有一个附加的隐含实参,将函数绑定到调用函数的对象。trans.avg_price()就是在调用名为trans的对象的avg_price()函数。如果trans是一个Sales_item对象,则在avg_price函数内部对Sales_item类成员的引用就是对trans成员的引用。
将关键字const加在形参表之后,就可以将成员函数声明为常量:
double avg_price() const; //const成员不能改变其所操作的对象的数据成员。
const必须同时出现在声明和定义中。
类定义的更多内容
1.使用类型别名来简化类:
类可以定义自己的局部类型的名字。例如,为std::string::size_type提供一个类型别名:class Screen{public:typedef std::string::size_type index; //在类内部定义一个类型别名private:index height;index width;};
2.显示指定inline成员函数
有些在类内部定义的简单函数会自动作为inline处理。也可以显示地声明为inline。可以在类定义体内部指定一个成员为inline,作为其声明的一部分。也可以在类定义体外部的函数上指定为inline。在类的外部定义inline会使得类比较容易阅读。
类声明与类定义
可以声明一个类而不定义它:
class Screen; //前向声明,在程序中引入了类类型Screen;在声明之后,定义之前, //类Screen是一个不完全类型,即已知Screen是一个类型,但不知道包含哪些成员。
不完全类型只能以有限的方式使用。不能定义该类型的对象。只能用于定于指向该类型的指针和引用,或者用于声明使用该类型作为形参类型或返回类型的函数。
隐含的this指针
在上一部分提到,成员函数有一个附加的隐含形参,即指向该类对象的一个指针,名为this。
成员函数不能定义this形参,而是由编译器隐式定义。成员函数可以显示使用this指针。
- 类基础
- 类基础
- 类基础
- 类:基础
- 类:基础
- 类 基础
- 基础类
- J2SE基础:1.类和对象基础
- python基础学习九:类基础
- xml类的基础
- 类基础—困惑
- SQL连接基础类
- java数据库基础类
- Java类基础结构
- 数据访问基础类
- C++基础--抽象类
- MFC(微软基础类)
- action 基础类
- POJ 2728 Desert King(01分数规划+二分+最小生成树-Prim)
- reflux react 例子
- 利用css实现文本超出N行之后显示省略号等css常用小知识点
- String,Stringbuffer,StringBuilder
- 如何更改Eclipse的workspace路径
- 类基础
- BP神经网络
- 扫描输入--来自《Java编程思想第四版》第13章
- 61.View the Exhibit and examine the structure of the PROMOTIONS table.
- 什么是I帧,P帧,B帧
- opensession()和getcurrentsession()的联系
- Android的材料设计兼容库(Design Support Library)
- python模块介绍- SocketServer 网络服务框架
- Android 开机自启动