写一个C++程序:3.定义对讲机intercom类,该类包含私有成员 ID(int类型)、message (string类型)、私有静态数据成员sharedMessage (string类型);公有成员函数 send(string, & intercom),作用是向intercom类的另一个对象发送消息,将另一个对象的message 成员赋值为消息内容;公有静态成员函数GetSharedMessage()显示sharedMessage的内容 。主函数中定义2个该类对象A和B,用A向B发送“hello!”的消息,用A的GetSharedMessage()显示内容。最后显示A和B所有数据成员的内容在屏幕上。
时间: 2023-06-02 20:04:47 浏览: 61
FCC.zip_intercom_对讲机_对讲机发射_频偏限制
int) 和 receive(int)分别表示发送和接收消息,其中 send 函数将传入的 string 类型消息存储到对象的 message 成员变量中,并将该对象的 ID 成员变量存储到 sharedMessage 中;receive 函数将从 sharedMessage 中获取消息并输出到控制台。
以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
#define MAX_MESSAGE_LENGTH 100
class Intercom {
private:
int ID_;
std::string message_;
static std::string sharedMessage_;
public:
Intercom(int ID) : ID_(ID) {}
bool send(std::string message) {
if (message.length() > MAX_MESSAGE_LENGTH) {
return false;
}
message_ = message;
sharedMessage_ = std::to_string(ID_);
return true;
}
void receive() {
if (sharedMessage_.empty()) {
printf("No message received.\n");
return;
}
printf("ID %s received message: %s\n", sharedMessage_.c_str(),
message_.c_str());
sharedMessage_.clear();
message_.clear();
}
};
std::string Intercom::sharedMessage_ = "";
int main() {
Intercom i1(1);
Intercom i2(2);
i1.send("Hello, i2!");
i2.receive();
i2.send("Hi, i1!");
i1.receive();
return 0;
}
```
注:本程序实现了 Intercom 类的基本功能,但并未进行完整的异常处理和错误检查。
阅读全文