C++ Primer Plus 第十一章复习题答案
作者:互联网
1.下面分别是类定义文件的原型和方法文件的函数定义:
1 //prototype 2 Stonewt operator *(double mult); 3 4 //definition - let constructor do the work 5 Stonewt Stonewt::operator *(double mult) 6 { 7 return Stonewt(mult * m_dPound); 8 }
2.成员函数是类定义的一部分,通过特定的对象来调用,可直接访问调用对象的成员。友元函数不是类的组成部分,因此被称为直接函数调用,必须将作为参数的对象和成员运算符“.”结合使用,才能访问对象的成员。
3.若要从外部世界(不包括派生类)访问类的私有成员和保护成员,则必须是友元函数才具有访问权限。
4. 下面分别是类定义文件的原型和方法文件的函数定义:
1 //prototype 2 friend Stonewt operator *(double mult, const Stonewt& st); 3 4 //definition - let constructor do the work 5 Stonewt operator *(double mult, const Stonewt& st) 6 { 7 return Stonewt(mult * st.m_dPound); 8 }
5.下面的5个运算符不能重载:
sizeof
.
.* (成员指针运算符)
::
?:
6.这些运算符必须由成员函数定义。
7. 下面分别是类定义文件的原型和方法文件的函数定义:
1 //prototype 2 operator double(); 3 4 //definition 5 Vector::operator double() 6 { 7 return m_dMag; 8 }
但请注意,使用直接获取数据成员m_dMag的MagVal()方法更符合逻辑。
标签:定义,double,成员,C++,Plus,复习题,operator,mult,Stonewt 来源: https://www.cnblogs.com/aPaulWong/p/14692253.html