c++随机给定一个字符串及一个字符,要求输出该字符在字符串中出现的位置;若未出现,提示“没有”,用类的形式
时间: 2024-09-26 12:07:31 浏览: 33
C++实现将一个字符串中的字符替换成另一个字符串的方法
在 C++ 中,我们可以创建一个名为 `CharacterFinder` 的类来实现这个功能。这个类会有一个私有成员变量 `string str` 存储输入的字符串,以及一个公共成员函数 `find_char_position` 来查找指定字符的位置。如果找不到,它将返回一个提示 "没有"。
```cpp
#include <iostream>
#include <string>
class CharacterFinder {
private:
std::string str;
public:
// 构造函数接收一个字符串作为输入
CharacterFinder(const std::string& input) : str(input) {}
// 查找并返回字符位置的函数
std::string find_char_position(char target) {
size_t pos = str.find(target);
if (pos != std::string::npos) {
return "字符在字符串中的位置: " + std::to_string(pos);
} else {
return "没有";
}
}
};
int main() {
// 创建 CharacterFinder 对象,并传入一个字符串
CharacterFinder finder("Hello, World!");
// 调用 find_char_position 函数,传递目标字符 'o'
std::cout << finder.find_char_position('o') << std::endl;
// 可以选择其他字符测试
std::cout << finder.find_char_position('z') << std::endl;
return 0;
}
```
在这个例子中,我们首先构造了一个 `CharacterFinder` 类,然后在 `main()` 函数中实例化它,接着通过调用 `find_char_position()` 方法寻找特定字符的位置。如果找到,返回对应的行号;如果没有找到,则返回 "没有"。
阅读全文