gpt4 book ai didi

c++ - 错误: expected body of lambda expression .。 (什么是 lambda ???)

转载 作者:行者123 更新时间:2023-12-03 12:51:04 28 4
gpt4 key购买 nike

刚开始学习CS106B,错误消息告诉我这3行有问题。

“错误:lambda 表达式的预期主体”

字符串 key = aToken.substr([i],1);

myMap.put(aToken.substr([i],1),1);

else {myMap[aToken.substr([i],1)] +=1};

int main() {

TokenScanner myTK;
myTK.setInput("Sven is Pro Moo Noob <naja>");
myTK.ignoreWhitespace();
Map <string ,int> myMap;
while(myTK.hasMoreTokens()){
string aToken = myTK.nextToken();
for(int i=0;i<= int(aToken.size());i++){
string key = aToken.substr([i],1);
if(!myMap.containsKey(key)){
myMap.put(aToken.substr([i],1),1);
}
else {myMap[aToken.substr([i],1)] +=1};
}
cout << aToken << endl;
}
cout<< myMap.toString() << endl;
return 0;
};

最佳答案

Lambda 表达式通常采用以下形式:

[capture list](parameters) {function body}

当编译器注意到您的 [i] 时,它预计它是 lambda 表达式的开头。在您的情况下,没有理由将数字括在方括号中。

Lambda 表达式允许使用匿名类内联构造仿函数对象。请参阅:What is a lambda expression in C++11?

关于c++ - 错误: expected body of lambda expression .。 (什么是 lambda ???),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20276494/

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