- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CPrimer第版习题解答十二章
第十二章 类和数据抽象12.1 编写一个名为person的类,表示人的名字和地址,使用string来保存每个元素。答:class person{public:person( string pName, string pAddress ){name = pName;address = pAddress;}private:string name;string address;};12.2 为person提供一个接收两个string参数的构造函数。见第一题。12.3 提供返回名字和地址的操作。这些函数应为const吗?解释你的选择。在public里添加成员函数:string get_name() const{return name;]string get_address() const{return address;]这两个成员函数不应该修改其操作的对象的数据成员的值,应该声明为const类型。12.4 指明person的哪个成员应声明为public,哪个成员应声明为private。解释。数据成员name和address应为private, 保证只能被类的成员所用,外界不可访问。成员函数get_name()和get_address() 应声明为public,为外界提供接口访问类的数据成员。构造函数也应声明为public,以便初始化类的对象。12.5 C++类支持哪些访问标号?在每个访问标号之后应定义哪种成员?如果有的话,在类的定义中,一个访问标号可以出现在何处以及可出现多少次?约束条件是什么?有 public, private, protect。public后定义可被外界访问的接口,private后定义只能被本类成员函数使用的成员;protect后定义的成员称为受保护成员,只能由本类及本类的子类访问。访问标号可以出现在任意成员定义之前且次数没有限制。约束条件是:每个访问标号指定了随后的成员定义级别,这个级别持续有效,直到下一个访问标号出现,或者看到类定义体的右花括号为止。12.6 用class关键字定义的类和用struct定义的类有什么不同。默认访问标号不同,用struct关键字定义的,在第一个访问标号之前的成员是共有的,如果是用class关键字定义的,在第一个访问标号之前的成员是private成员。12.7 什么事封装?为什么封装是有用的?封装是一种将低层次的元素组合起来形成新的、高层次实体的技术。例如,函数是封装的一种形式:函数所执行的细节行为被封装在函数本身这个更大的实体中。被封装的元素隐藏了它们的实现细节,可以调用一个函数但不能访问它所执行的语句,同样类也是一个封装的实体:它代表若干成员的聚集,大多数类类型隐藏了实现该类型的成员。封装隐藏了内部元素的实现细节,提供了优点:避免类内部出现无意的可能破坏对象状态的用户级错误;在修改类的实现时不需要修改用户级代码,这些都很有用。12.8 将sales_item::avg_price定义为内联函数。inline double sales_item::avr_price() const{if ( units_sole )return revenue/units_sold;else return 0;}12.9 修改本节中给出的screen类,给出一个构造函数,根据屏幕的高度、宽度和内容的值来创建screen。class Screen{public:typedef std::string::size_type index;Screen( index hei, index wid , string content ){contents = content;height = hei;width = wid;}private:std::string contents;index cursor;index height, width;};12.10 解释下述类中的每个成员:class Record {typedef std::size_t size;Record(): byte_count(0) {}Record(size s): byte_count(s) { }Record(std::stirng s): name(s), byte_count(0) {}size byte_count;std::string name;public: size get_count() const { return byte_count; }std::string get_name() const { return name; }};三个Record()函数是重载的三个构造函数,size byte_count; std::string name;这是两个private的数据成员,size get_count(
有哪些信誉好的足球投注网站
文档评论(0)