C++ Primer(第五版) 7.4--7.6节练习

7.33    pos位于类的作用域之外,无法直接使用,应改为Screen::pos。

7.34    放在最后一行无法通过编译,声明中使用的名字,包括返回类型和参数列表使用的名字,都必须在使用前确保可见。

7.35    

typedef string Type;
Type iniVal();    //Type为string
class Exercise {
public:
    typedef double Type;
    Type setVal(Type);    //返回类型和形参类型都使用类内声明,为double
    Type iniVal();        //隐藏了类外部定义的iniVal()
private:
    int val;
};

/* 返回类型Type使用了类外部的声明,为string,
   应该使用Exercise::Type
   参数Type已经处于类作用域内,为double
*/
Type Exercise::setVal(Type parm)    
{
    val = parm + initVal();    //initVal使用类成员函数iniVal()
    return val;
}

7.36    初始化顺序与它们在类定义中出现的顺序一致,rem先初始化,此时base未初始化,应使用rem(i % j),或者调换rem和base定义的次序。

7.37    first_item使用接受std::istream&参数的构造函数;next使用默认构造函数,即使用默认实参""的构造函数,其他成员为0;last和next使用相同的构造函数,使用传入的实参"9-999-99999-9",其他成员为0.</

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值