foreach在C++中无法识别

Joh*_*hnG 3 c++ foreach

在我的cs106b书中,我们使用表达式"foreach"来浏览Map中的单词列表.我实施了这些代码,并将我的头撞在墙上,面对神秘的错误.这是代码:

   void DisplayWordCounts(Map<int> & wordsCount) {
     foreach (string word in wordsCount) {
        cout << left << setw(15) << word << right << setw(5)
        << wordsCount[word] << endl;
     }
}
Run Code Online (Sandbox Code Playgroud)

在以"foreach"开头的行上我得到以下错误:lesson4-macbeth/life.cpp:58:错误:在'word'之前预期的primary-expression lesson-macbeth/life.cpp:58:错误:'foreach'是未在此范围内声明lesson4-macbeth/life.cpp:58:错误:预期`;' 在'{'之前

我想foreach不被认可.在这种情况下,我如何查看Map类中的项目列表?

tem*_*def 8

foreach不是标准的C++功能.我实际上帮助Eric Roberts整理了CS106B/X的实现,如果你这么做,你应该可以使用它foreach.如果您很好奇,我可以尝试向您发送文件的源代码.

此外,找到Stack Overflow的道具!虽然你的SL应该是你的第一道防线.:-)

  • 在尝试忽略特定于语言的细节时,C++是教授数据结构的有趣选择! (3认同)
  • @templatetypedef:我意识到这一点,但是这个学生并不熟悉*他*,并认为他正在学习C++.我曾经是一个常规论坛,在美国学生常年发生类似的问题,他们在AP计算机科学课程中学习了C++; 他们中的一些人似乎已经进入工作场所,然后才发现他们所学的课程类库在乙炔以外是不可用的. (2认同)

Bet*_*eta 6

我建议for_each.