刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

 

试题六(共 15 分)

阅读下列说明和 C++代码,填补代码中的空缺,将解答填入答题纸的对应

栏内。

【说明】

以下 C++代码实现一个简单的聊天室系统(ChatRoomSystem),多个用户 (User)可以向聊天室(ChatRoom)发送消息,聊天室将消息展示给所有用户。 类图如图 6-1 所表示。

 

【C++代码】

#include<iostream>

#include <string> using namespace std; class User {

private:

string name; public:

User(string name){

    (1) =name;

}

~User(){}


 

void setName(string name) {

this->name=name;

 

}

 

string getName(){

return name;

}

void sendMessage(string message);

 

};

 

class ChatRoom { .

 

public:

static void showMessage(User* user, string message) { cout<<"["<<user->getName()"] : "<<message<<endl;

}

};

void User::sendMessage(string message) {

  (2) (this,message);

}

class ChatRoomSystem{

public: . .

void startup0(){

User* zhang = new User(“John"); User* li = new User("Leo");


 

zhang->sendMessage("Hi! Leo!");

li_>sendMessage("Hi! John!");

 

}

void join(User* user) {

    (3)   ("HeIIoEveryone!l am"+user->getName()); . ;

} .

 

};

int main(){

ChatRoomSystem*crs=  (4) ; crs->startup();

crs->join(  (5) ("Wayne")); delete crs;

 

}

/* 程序运行结果: [John]:Hi! Leol [Leo]:Hi! John!

[Wayne】:Hello Everyone!Iam Wayne

/*


使用微信搜索喵呜刷题,轻松应对考试!

答案:

1、this->name
2、ChatRoom::showMessage
3、user->sendMessage
4、new ChatRoomSystem()
5、new User 


解析:

题目是关于一个简单的聊天室系统的C++代码实现。根据题目描述和给出的代码片段,我们可以进行以下分析:

  1. 在User类的构造函数中,我们需要初始化name成员变量,所以空缺(1)应填入this->name = name;。这里的this->name表示当前对象的name成员变量,将其赋值为传入的参数name。

  2. 在User类的sendMessage方法中,我们需要调用ChatRoom类的showMessage方法来展示消息。因此,空缺(2)应填入ChatRoom::showMessage。这里的::表示静态成员函数的调用。

  3. 在ChatRoomSystem类的join方法中,我们需要调用用户的sendMessage方法来发送消息。因此,空缺(3)应填入user->sendMessage。这里假设该方法内部会有适当的逻辑处理用户的加入和发送消息。

  4. 在main函数中,我们需要创建ChatRoomSystem的实例来启动聊天室系统。因此,空缺(4)应填入new ChatRoomSystem()来创建一个新的ChatRoomSystem对象。

  5. 在main函数中创建新用户时,我们需要使用new关键字来动态分配内存并返回指向新对象的指针。因此,空缺(5)应填入new User("Wayne")来创建一个名为"Wayne"的新用户对象。注意这里的"Wayne"是作为构造函数的参数来传递的。

综上所述,填空答案为:
(1)this->name = name; (2)ChatRoom::showMessage (3)user->sendMessage (4)new ChatRoomSystem() (5)new User(“Wayne”)

创作类型:
原创

本文链接:  试题六(共 15 分) 阅读下列说明和 C++代码,填补代码中的空缺,将解答填入答题纸的对应 栏

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share