用c++定义一个字符串类,使其至少具有内容和长度两个数据成员,分别定义不同的成员函数,用于显示字符串、求字符串长度,给原字符串后面连接另一个字符串
时间: 2024-12-11 07:24:23 浏览: 9
在 C++ 中,我们可以定义一个名为 `String` 的类,包含内容(`content_`)和长度(`length_`)的数据成员,并提供相应的成员函数来操作字符串。下面是一个简单的实现:
```cpp
#include <iostream>
#include <string>
class String {
private:
std::string content_; // 内容数据成员
int length_; // 长度数据成员
public:
// 构造函数,初始化字符串为空,长度为0
String() : content_(""), length_(0) {}
// 构造函数,接受初始字符串并计算其长度
explicit String(const std::string& init) : content_(init), length_(init.length()) {}
// 显示字符串
void display() const {
std::cout << "字符串内容: " << content_ << std::endl;
}
// 求字符串长度
int getLength() const {
return length_;
}
// 后面连接另一个字符串
String concat(const std::string& other) const {
return String(content_ + other);
}
};
int main() {
String str1("Hello");
str1.display(); // 输出: 字符串内容: Hello
std::cout << "字符串长度: " << str1.getLength() << std::endl; // 输出: 字符串长度: 5
String str2 = str1.concat(" World!");
str2.display(); // 输出: 字符串内容: Hello World!
return 0;
}
```
在这个例子中,我们定义了 `display()` 和 `getLength()` 函数,以及 `concat()` 成员函数,用于操作字符串。`concat()` 函数返回一个新的 `String` 对象,表示原始字符串与新字符串的连接。
阅读全文