gpt4 book ai didi

c++ - 在变量或字段 'printVector' 声明为 void 之前缺少模板参数

转载 作者:太空宇宙 更新时间:2023-11-04 13:29:14 25 4
gpt4 key购买 nike

我遇到了这两个错误,但我无法弄清楚。我基本击中了编码 block 。

变量或字段 'printVector' 在

之前声明为无效且缺少模板参数
#include <iostream>
#include <vector>
#include <cctype>
using namespace std;

void printVector(vector<string> vec);

int main() {

vector<string> ivec;


cout<<"Please your sequence of words and ctrl-z to stop"<<endl;
string input;

while(getline(cin, input)){
ivec.push_back(input);
}

cout<<"Your input is: \n";

for(std::vector<string>::iterator it = ivec.begin(); it != ivec.end(); ++it ){
cout<<*it<<"";
}

cout<<"Your input changed to upper case: "<<endl;
printVector(ivec);
return 0;
}


void printVector(vector<string> vec){
for(auto &v: vec){
for(auto &c: v)
cout<<toupper(c)<<"";
}

}

更新:

void printVector(vector<string> vec){


// process characters in s until we run out of characters or we hit a whitespace
for (auto it = vec.begin(); it != vec.end() && !isspace(*it); ++it)
*it = toupper(*it);


错误:

无效参数 '无效参数 '

没有用于调用“toupper(std::basic_string&)”的匹配函数

最佳答案

你需要添加

#include <string>

到你的程序。
std:string未声明编译器无法将其识别为 std::vector<std::string> 的有效模板参数.

关于c++ - 在变量或字段 'printVector' 声明为 void 之前缺少模板参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32163560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com