为了账号安全,请及时绑定邮箱和手机立即绑定
讲的很好,很深入.
分享下,如果想在类里调用外部的普通同名方法,可以用::外部函数调用
如果外部方法里namespace可以命名空间::外部方法
“看了这节感觉白学了。。。。”说的就是我啊...

最赞回答 / 按照自己的节奏前行
printinfo是老师自己写的方法,自定义的,而cout是c++中提供的输出方法.你看老师的printinfo里面也有cout的
64bit 的机器输出的sizeof(p)=8, sizeof(Line)=16;
new一块内存,会去调用对象的构造函数;
malloc一块内存,不会去调用对象的构造函数;
(*p)将指针变成一个对象,可以'.'来调用成员:
(*p).m_iX 作用等于p->m_iX
class Coordinate
{

public:
Coordinate(int x, int y)
{
m_iX = x;
m_iY = y;
}
public:
int m_iX;
int m_iY;
};

int main(void)
{
Coordinate *p = new Coordinate(3,5);
cout <<"(" << p->m_iX <<"," << p->m_iY << ")" << endl;
delete p;
p = NULL;
return 0;
}
老师 你的表情包......
实例化对象A,如果A中包含对象成员B:B构造->A构造->A析构->B析构;
如果B有默认构造函数则A不需要初始化列表来初始化B;
如果B的构造函数有入参,则A需要初始化列表来初始化B;
初始化的顺序先于构造函数 老师没讲清楚
学完这节才知道万里长征刚走第一步
演绎出怎样的美妙...老师你把C++都教的很文艺
Coordinate(int x, int y):m_iX(x),m_iY(y) {}
void printInfo() const
{
cout << "(" << m_iX << "," << m_iY <<")"<< endl;
}
……
const Coordinate *p = &coor;
const Coordinate &c = coor;
class Coordinate
{
public:
Coordinate()
{
}
void set(int a,int b)
{
m_iX=a; m_iY=b;
}
public:
int m_iX;
int m_iY;
};
int main(void)
{
Coordinate coorArr[2];
coorArr[0].set(1,2);
coorArr[1].set(3,4);
for(int i = 0; i < 2; i++)
{
coorArr[i].printInfo();
}
return 0;
}
注意题目中有两个public: 第二个public:应该改为private
课程须知
本课程是C++初级课程 需要掌握C++语言基础语法 如果不太熟悉的话,可以观看: 《C++远征之起航篇》 《C++远征之离港篇》 《C++远征之封装篇(上)》
老师告诉你能学到什么?
1、对象数组的定义和使用 2、对象成员的定义和使用 3、深拷贝和浅拷贝 4、对象指针、对象引用的定义和使用 5、常对象指针、常对象引用、常成员函数的定义和使用

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消