第四章作业å�‚考答æ¡?- 百度文库 ÏÂÔØ±¾ÎÄ

void show();

void show()const; };

void PP::show() {

cout<

void PP::show() const {

cout<

int main() {

PP p1('F'),p2; const PP p3('N'); p1.show(); p2.show(); p3.show(); cout<

ÔËÐнá¹ûÈçÏ£º F@U@N!

Press any key to continue Ô­Òò£º

show()º¯ÊýÓÐÁ½ÖÖÖØÔØ°æ±¾£¬p1.show()£»Óëp2.show()£»µ÷ÓõÄΪÆÕͨÀàÐ͵Ävoid

PP::show()º¯Êý£¬p3.show();µ÷ÓõÄÊÇvoid show()const;º¯Êý£¬ÒòΪ¶¨Òåp3¶ÔÏóʱ£¬½«Æä¶¨ÒåΪÁ˳£¶ÔÏó¡£

4¡¢Ð´³öÏÂÃæ³ÌÐòµÄÔËÐнá¹û£¬²¢·ÖÎö³ÉÔ±º¯Êýdouble Area()const Èç¹ûÈ¥µôconst£¬±àÒë »á³ö´íÂð£¿ÎªÊ²Ã´£¿ #include using namespace std; class Circle {

const double PI; double r; public:

Circle(double rr):PI(3.14) { r=rr; }

double Area()const {

return PI*r*r;

} };

int main() {

Circle c1(4);

const Circle c2(5);

cout<

ÔËÐнá¹ûΪ£º 50.24 78.5

Press any key to continue »á³ö´í¡£ Ô­Òò£º

±àÒë³ö´í£¬ÏÔʾΪ£º

'Area' : cannot convert 'this' pointer from 'const class Circle' to 'class Circle &'

ÒòΪ¶ÔÏóc2±»¶¨ÒåΪ³£¶ÔÏó£¬ÔËÐйý³ÌÖÐÐëµ÷Óó£³ÉÔ±º¯Êý£¬µ«ÊÇɾ³ýÁËdouble Area()constº¯Êý¶¨ÒåÖеÄconst£¬Ê§È¥³£³ÉÔ±º¯Êý£¬Ê¹µÃÔÚÓï¾äcout<

1£® ¶¨ÒåÒ»¸ö½ÌʦÀàteacher£¬ÓÐÈçÏ»ù±¾³ÉÔ±£º (1)˽ÓÐÊý¾Ý³ÉÔ±£º ½ÌʦºÅ£º string id£» ÐÕÃû£º string name£» רҵ£º string speciality£» £¨2£©Ë½Óо²Ì¬Êý¾Ý³ÉÔ±£º ½Ì¹¤ÈËÊý£ºstatic int count£» £¨3£©¹«ÓгÉÔ±º¯Êý£º

¹¹Ô캯Êý£º´ø²ÎÊýµÄ¹¹Ô캯Êý£º teacher£¨string£¬string£¬string£©£» ²»´ø²ÎÊýµÄ¹¹Ô캯Êý£º teacher£¨£©£»

¹¹Ô캯ÊýӦʵÏÖÔÚÿ´Î´´½¨½Ìʦ¶ÔÏóʱcount+1

Îö¹¹º¯Êý£º~ teacher£¨£©£»Îö¹¹º¯ÊýӦʵÏÖÔÚÿ´Î½Ìʦ¶ÔÏóÏûÍöʱcount-1 Êä³öº¯Êý£ºvoid Print£¨£©const£»

»ñÈ¡¾²Ì¬Êý¾Ý³ÉÔ±º¯Êý£ºstatic intGetcount£¨£©£»

Ö÷º¯ÊýµÄ¶¨Òå¼°³ÌÐòµÄÔËÐнá¹ûÈçÏ£¬ÇëÍê³ÉÀàµÄ¶¨Òå¼°ÀàÖи÷º¯ÊýµÄʵÏÖ´úÂ룬²¹³ä Íê³ÉÒ»¸öÍêÕûµÄ³ÌÐò¡£

int main(int argc, char* argv[]) {

teacher *Teachers[MOSTCOUNT]; int Teacher_count=0; string id_tmp; string name_tmp;

string speciality_tmp;

while(Teacher_count < MOSTCOUNT) {

//½»»¥ÊäÈëÊä³ö

cout << \ÇëÊäÈë½ÌʦÐÅÏ¢ÒÔ½¨Á¢¶ÔÏó£º\cout << \cin >> id_tmp; cout << \cin >> name_tmp; cout << \cin >> speciality_tmp; //´´½¨½Ìʦ¶ÔÏó

Teachers[Teacher_count]=new

teacher(id_tmp,name_tmp,speciality_tmp); //Êä³ö´æÔڵĶÔÏóÐÅÏ¢

cout << \ÒÑ´´½¨½Ìʦ¶ÔÏó£º\<< \¸ö¡£½ÌʦÐÅÏ¢ÈçÏ£º\for(int i=0;i<=Teacher_count;i++) {

(Teachers[i])->Print(); }

//½»»¥ÊÇ·ñɾ³ýÒ»¸ö¶ÔÏó int del_flag=0;

cout << \ÊÇ·ñɾ³ý½Ìʦ£º1 ÊÇ£»0 ·ñ¡£\cin >> del_flag; if(del_flag) {

delete Teachers[Teacher_count]; } else {

Teacher_count++; } }

return 0; }

ÔËÐнá¹ûÈçÏ£º id:1

name:piter

speciality:teacher

ÒÑ´´½¨½Ìʦ¶ÔÏó£º1 ¸ö¡£½ÌʦÐÅÏ¢ÈçÏ£º

Teacher's info:(id):1(name):piter(speciality):teacher ÊÇ·ñɾ³ý½Ìʦ£º1 ÊÇ£»0 ·ñ¡£ 0

ÇëÊäÈë½ÌʦÐÅÏ¢ÒÔ½¨Á¢¶ÔÏó£º id:2

name:bob

speciality:peteacher

ÒÑ´´½¨½Ìʦ¶ÔÏó£º2 ¸ö¡£½ÌʦÐÅÏ¢ÈçÏ£º

Teacher's info:(id):1(name):piter(speciality):teacher Teacher's info:(id):2(name):bob(speciality):peteacher ÊÇ·ñɾ³ý½Ìʦ£º1 ÊÇ£»0 ·ñ¡£ 1

ÇëÊäÈë½ÌʦÐÅÏ¢ÒÔ½¨Á¢¶ÔÏó£º id:3

name:july

speciality:ssteacher

ÒÑ´´½¨½Ìʦ¶ÔÏó£º2 ¸ö¡£½ÌʦÐÅÏ¢ÈçÏ£º

Teacher's info:(id):1(name):piter(speciality):teacher Teacher's info:(id):3(name):july(speciality):ssteacher ÊÇ·ñɾ³ý½Ìʦ£º1 ÊÇ£»0 ·ñ¡£ ³ÌÐòÈçÏÂ:

#include #include

#define MOSTCOUNT 5 using namespace std; class teacher {

private:

string id; string name; string speciality; static int count; public:

teacher(string i,string n,string s); teacher(); ~teacher();

void Print() const; static int Getcount(); };

int teacher::count=0; teacher::teacher() {

count++; }

teacher::~teacher() {

count--;