我正在创建一个程序,这里是规格:
创建一个对字符串执行各种操作的 CharConverter 类。它应该具有以下两个公共成员函数。
uppercase 成员函数接受一个字符串并返回它的副本,其中所有小写字母都转换为大写。如果一个字符已经是大写字母或者不是字母,它应该被单独留下。
properWords 成员函数接受由空格分隔的单词字符串并返回它的副本,其中每个单词的第一个字母转换为大写。
编写一个使用该类的简单程序。它应该提示用户输入一个字符串。然后它应该调用properWords 函数并显示这个结果字符串。最后,它应该调用大写函数并显示这个结果字符串。
我在没有模块化的情况下编写了程序,以确保我正确转换了所有内容。现在我正在尝试模块化我收到错误我不知道它们的意思,编译时:
这是我的代码:
#include<iostream>
#include<string>
#include<vector>
#include<ctype.h>
using namespace std;
class CharConverter {
public:
void uppercase(string, int);
void properWords(string, int);
};
void CharConverter::uppercase(string myString, int s) {
s = myString.length();
for (int i = 0; i <= s; i++) {
myString[i] = toupper(myString[i]);
}
cout << myString << endl;
}
void CharConverter::properWords(string myString, int s) {
for (int i = 0; i <= s; i++) {
myString[i];
myString[0] = toupper(myString[0]);
if (myString[i] == ' ') {
myString[i + 1] = toupper(myString[i + 1]);
}
}
cout << myString << endl;
}
int main() {
void properWords(string, int);
void uppercase(string, int);
string sentence;
int size;
cout << "Enter a sentence you want converted to all uppercase letters and
set up with proper uppercase letters." << endl;
getline(cin, sentence);
size = sentence.length();
properWords(sentence, size);
uppercase(sentence, size);
return 0;
}