最新回答 / pkcorn
成员函数重载只是相当于调用一个成员函数。而悠远函数重载是开放一个接口给一个operator-()的函数,没有成员函数重载安全,结合上一节所讲,还是少用友元函数好,容易破坏内部封装结构。
2017-08-06
最新回答 / HanCHEN
找到原因了,从你的图中可以看出来虽然你主函数里没有用到深拷贝,但运行时调用了深拷贝函数,所以在最后多释放了两次p[],系统崩溃。这是由于“=”没有重载导致的,所以主函数中t3=t1+t2,系统理解为了t3=t1,t3+t2。要想解决就要定义重载运算符“=”。下面是代码。<...图片...>
2017-08-03
说一些话吧,视频从开始看到现在,从来没有发过言,感觉C++篇快看完了,说一下想法。
这个课程还是很可以的,有助于我们了解基本的C++概念,适合于初学者,老师讲的也挺不错的,简单易懂,谢谢老师。
共勉!
这个课程还是很可以的,有助于我们了解基本的C++概念,适合于初学者,老师讲的也挺不错的,简单易懂,谢谢老师。
共勉!
请教大家,我用的是VS2013,在Match.cpp定义printTime时,三个数据成员会有红色波浪线,编译器提示都不能访问,但是F5去执行程序的时候是可以打印出时间的,不知道大家有没有遇到过??
void Match::printTime(Time &t)
{
cout << t.m_iHour << ":" << t.m_iMin << ":" << t.m_iSecond << endl;
}
void Match::printTime(Time &t)
{
cout << t.m_iHour << ":" << t.m_iMin << ":" << t.m_iSecond << endl;
}
2017-07-27
已采纳回答 / 慕用9492752
可以,在类中定义friend Coordinate operator++(Coordinate &c);类外实现下Coordinate operator++(Coordinate &c){ c.m_iX++; c.m_iY++; return c;}
2017-07-25