第16章习题2

来源:互联网 发布:js改变alert样式 编辑:程序博客网 时间:2024/06/06 00:49
#include <iostream>#include <string.h>char BREED[6][10] = { "YORKIE", "CAIRN", "DANDIE", "SHETLAND", "DOBERMAN", "LAB" };class Mammal{public:// constructorsMammal(): age(2), weight(5) {}~Mammal(){}// accessorsint getAge() const { return age; }void setAge(int newAge) { age = newAge; }int getWeight() const { return weight; }void setWeight(int newWeight) { weight = newWeight; }// other methodsvoid speak() const { std::cout << "Mammal sound!\n"; }void sleep() const { std::cout << "Shhh,I'm sleeping.\n"; }protected:int age;int weight;};class Dog : public Mammal{public:// constructorsDog(){ strcpy(breed,BREED[0]); }  // 对breed的赋值必须这样~Dog() {}// accessors  // 将字符串常量地址返回,返回类型也必须是常量 char const *char const* getBreed() const { std::cout << breed << "\n"; return breed; }void setBreed(char *newBreed) { strcpy(breed,newBreed); }// other methodsvoid wagTail() { std::cout << "Tail wagging '''\n"; }void begForFood() { std::cout << "Begging for food ...\n"; }private:char breed[10];};int main(){Dog fido;fido.getBreed();fido.speak();fido.wagTail();std::cout << "Fido is " << fido.getAge() << " years old\n";    return 0;}

注意:字符串的赋值方式         常量的返回类型 
原创粉丝点击