第九章 对象和类
2014-02-17 21:13
190 查看
1、通过指针访问对象成员:声明对象名,如circle后,Circle *p = &circle即声明了一个对象指针p,并将circle的地址赋予p。若需引用circle中的成员时,格式为p->XX。
2、在堆中创建动态对象:ClassName *p = new ClassName();当在函数中声明对象时,对象创建在栈中,函数返回时对象会被销毁,需要保留对象时就需要动态创建对象。使用new即是向系统说明该指针是在堆上分配存储空间的。
3、this使用方法:用来访问函数中被屏蔽的数据域,例:之前有定义radius,circle(double radius){this->radius = radius;}即可访问之前定义的radius。
4、如果需要一个类的不同实例共享数据或者函数,就使用静态变量static。这样,一个对象改变了静态变量的值,同一个类的所有对象此变量的值都要被改变。
如果一个变量或函数需要依赖实例,就应该声明为实例,如果不依赖于具体的实例,就应该声明为静态的。
5、创建对象时,构造函数被调用,销毁对象时,析构函数被调用。
6、友元函数:关键字friend,一个类的友元类和友元函数可以访问他的私有变量和函数。定义方法:
class Data{
public :
friend class AccessData;
};
7、向量类:vector<datatype> vectorName;向量和数组类似,但是向量可以自由改变大小。
2、在堆中创建动态对象:ClassName *p = new ClassName();当在函数中声明对象时,对象创建在栈中,函数返回时对象会被销毁,需要保留对象时就需要动态创建对象。使用new即是向系统说明该指针是在堆上分配存储空间的。
3、this使用方法:用来访问函数中被屏蔽的数据域,例:之前有定义radius,circle(double radius){this->radius = radius;}即可访问之前定义的radius。
4、如果需要一个类的不同实例共享数据或者函数,就使用静态变量static。这样,一个对象改变了静态变量的值,同一个类的所有对象此变量的值都要被改变。
如果一个变量或函数需要依赖实例,就应该声明为实例,如果不依赖于具体的实例,就应该声明为静态的。
5、创建对象时,构造函数被调用,销毁对象时,析构函数被调用。
6、友元函数:关键字friend,一个类的友元类和友元函数可以访问他的私有变量和函数。定义方法:
class Data{
public :
friend class AccessData;
};
7、向量类:vector<datatype> vectorName;向量和数组类似,但是向量可以自由改变大小。
相关文章推荐
- 第九章 对象和类
- 流畅的python学习笔记:第九章:符合python风格的对象
- java编程思想读书笔记-第九章 对象的容纳
- 第九章:用内核对象进行线程同步(二) .
- 第九章 使用内核对象进行线程同步
- 流畅的python第九章符合Python风格的对象学习记录
- 第九章 怎样使用类和对象
- 廖雪峰《python3基础教程》读书笔记——第九章 面向对象高级编程
- 第九章:BOM浏览器对象模型
- 第九章:用内核对象进行线程同步
- C++高级编程 第九章: 精通类和对象
- 第九章 构造器与垃圾收集器---对象的前世今生
- 第九章 线程与内核对象的同步(1)
- 第九章 线程与内核对象的同步(2)
- 流程的Python 第九章:符合Python风格的对象
- 《C++ Primer》读书笔记-第九章 04 vector对象增长
- 第九章 线程与内核对象的同步(3)
- 第九章 把值转变成 F# 带成员的对象类型
- 第九章 线程与内核对象的同步(4)
- 【阅读】《Head First JavaScript》第九章——为数据带来生命(对象)