为了账号安全,请及时绑定邮箱和手机立即绑定
  • class Array { public: Array(){m_iCount=5;m_pArr=new int[m_iCount];} Array(const Array& arr) { m_iCount=arr.m_iCount; m_pArr=arrm_pArr; } private: int m_iCount; int *m_pArr; }; int main(void) { Array arr1; Array arr2=arr1; return 0; }//浅拷贝 class Array { public: Array(){m_iCount=5;m_pArr=new int[m_iCount];} Array(const Array& arr) { m_iCount=arr.m_iCount; m_pArr=new int[m_iCount]; for(int i=0;i<m_iCount;i++) { m_pArr[i]=arrm_pArr[i]; } } private: int m_iCount; int *m_pArr; }; //深拷贝
    查看全部
  • 如果坐标类有一个默认的构造函数(不带参数的构造函数) 那么在实例化线段对象时可以不使用初始化列表 如果坐标类要求必须有坐标传入 在实例化线段时必须使用初始化列表的方式将相应的值传递给坐标类
    查看全部
  • Coordinate(int x,int y); Coordinate::Coordinate(int x,int y) { m_iX=x; m_iY=y; cout<<"Coordinate()"<<m_iX<<","<<m_iY<<endl; } Line(int x1,int y1,int x2,int y2); Line::Line(int x1,int y1,int x2,int y2):m_coorA(x1,y1),m_coorB(x2,y2) { cout<<"Line()"<<endl; } #include<iostream> #include<stdlib.h> #include"Line.h" using namespace std; int main(void) { Line *p=new Line(1,2,3,4); p->printInfo (); delete p; p=NULL; return 0; }
    查看全部
  • class Coordinate { public: Coordinate(); ~Coordinate(); void setX(int x); int getX(); void setY(int y); int getY(); public: int m_iX; int m_iY; }; #include<iostream> #include"Coordinate.h" using namespace std; Coordinate::Coordinate(){} Coordinate::~Coordinate(){} 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; }; #include<iostream> #include"Line.h" using namespace std; Line::Line(){} Line::~Line(){} void Line:: setA(int x,int y) { m_coorA.setX(x); m_coorA.setY(y); } void Line::setB(int x,int y) { m_coorB.setX(x); m_coorB.setY(y); } void Line::printInfo() { cout<< "("<<m_coorA.getX()<< "," <<m_coorA.getY()<<")"<<endl; 同理B }
    查看全部
  • class Coordinate { public: int m_iX; int m_iY; }; Coordinate coord[3]; coord[1].m_iX=10; Coordinate *p=new Coordinate[3]; p[0].m_iY=20; p->m_iY=20; delete []p; p=NULL;
    查看全部
  • 此时不能直接用delete []p;来释放内存,要加p++让它指回循环之前的位置 for(int j=0;j<3;j++) { cout<<"p_x"<<p->m_iX<<endl; cout<<"p_y"<<p->m_iY <<endl; p--; } p++; delete []p; p=NULL;
    查看全部
  • 深拷贝首先需要申请一段内存
    查看全部
  • 动画控制代码
    查看全部
    0 采集 收起 来源:开篇案例

    2016-05-04

  • 常对象只能调用常成员函数,不能调用普通成员函数;一个对象能够有多个对象常引用。
    查看全部
    0 采集 收起 来源:练习题

    2016-05-02

  • 函数后面的括号一定不要忘
    查看全部
  • this指针用法
    查看全部
  • 动画控制
    查看全部
    0 采集 收起 来源:开篇案例

    2016-04-25

  • 迷宫类
    查看全部
    0 采集 收起 来源:开篇案例

    2016-04-25

  • 对象指针的初始化,指针一定要要指向某一个对象才能操作,才有意义
    查看全部
  • 常成员函数 内部定义数据成员
    查看全部

举报

0/150
提交
取消
课程须知
本课程是C++初级课程 需要掌握C++语言基础语法 如果不太熟悉的话,可以观看: 《C++远征之起航篇》 《C++远征之离港篇》 《C++远征之封装篇(上)》
老师告诉你能学到什么?
1、对象数组的定义和使用 2、对象成员的定义和使用 3、深拷贝和浅拷贝 4、对象指针、对象引用的定义和使用 5、常对象指针、常对象引用、常成员函数的定义和使用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!