-
class Coordinate { public: Coordinate(); ~Coordinate(); void setX(int x); int getX(); void setY(int y); int getY(); private: int m_iX; int m_iY; }; #include "Coordinate.h" #include <iostream> using namespace std; Coordinate::Coordinate() { cout <<"Coordinate()" <<endl; } Coordinate::~Coordinate() { cout <<"~Coordinate()" <<endl; } void Coordinate::setX(int x) { m_iX = x; } int Coordinate::getX() { return m_iX; } void Coordinate::setY(int y) { m_iY = y; } int Coordinate::getY() { return m_iY; } #include "Coordinate.h" class Line { public: Line(); ~Line(); void setA(int x,int y); void setB(int x,int y); void printInfo(); private: Coordinate m_coorA; Coordinate m_coorB; };查看全部
-
对象成员:一个对象中包含其他对象 如:class Line{ public: Line(); private: Coordinate m_coorA; Coordinate m_coorB; } 当实例化这样一个对象时,会先实例化m_coorA,再实例化m_coorB,最后实例化Line 对象消亡时,会先销毁Line,再m_coorB,最后m_coorA。先实例化对象成员,再实例化对象,销毁时相反 先进后出查看全部
-
用delete释放数组内存时要注意此时的指针*p要指到该数组的第一个元素上。查看全部
-
堆区需要delete,栈区自动回收查看全部
-
相同的成员函数名的函数,其中一个是有一个是const修饰的常成员函数,这两个函数互为重载。 实例化对象的时候是需要const的修饰的时候调用的为从const的常成员函数查看全部
-
const修饰的数据成员不能够在函数中初始化,只能在初始化列表中初始化。查看全部
-
常成员函数中可以使用普通的数据成员,但是不能改变对象成员的值查看全部
-
this指针的实质是当前所在对象的地址。查看全部
-
先实例化对象成员,再实例化对象,销毁时相反 先进后出 构造函数都没有参数 坐标类的构造函数有参数查看全部
-
销毁对象数组时,每一个对象的析构函数都会被执行查看全部
-
delete []p: 加上[]能销毁所有的元素,如果不加只销毁第一个元素,只调用了一次析构函数 其实就是调用了p中的析构函数查看全部
-
Coordinate *p=new Coordinate(3,5); 申请内存并初始化查看全部
-
选中代码,按Ctrl+c+k=注释掉查看全部
-
一个对象可以有多个对象常引用查看全部
-
常成员函数中可以使用普通的数据成员,但是不能改变对象成员的值查看全部
举报
0/150
提交
取消