C++/'string' 未在此范围/错误中声明

标签 c++ string function switch-statement

我正在制作一个跟踪高尔夫统计数据的程序,因此我需要培养球员。我做了一个函数叫做

getPlayer(int playerNum);

在里面我有所有这些代码

switch(playerNum)
case 1: return(player1);break;
case 2: return(player2);break;
case 3: return(player3);break;
case 4: return(player4);break;
case 5: return(player5);break;
case 6: return(player6);break;
case 7: return(player7);break;
case 8: return(player8);break;
case 9: return(player9);break;
case 10: return(player10);break;

在我的 playermanager.h 中

    #ifndef PLAYERMANAGER_H
    #define PLAYERMANAGER_H
    #include <string>

    class playerManager
    {
    public:
        playerManager();
        std::string getPlayer(int playerNum);
    private:
        std::string player1;
        std::string player2;
        std::string player3;
        std::string player4;
        std::string player5;
        std::string player6;
        std::string player7;
        std::string player8;
        std::string player9;
        std::string player10;
    };

    #endif // PLAYERMANAGER_H

现在当我运行它时我得到了错误

    'player1' was not declared in this scope

我也得到了错误

    break statement not within loop or switch 

它从玩家 1 一直持续到玩家 10。 我通过调用文件读取器函数对字符串进行了智能化。我真的是 c++ 的新手,我可能正在做一些愚蠢的错误,所以如果有人能帮忙的话。 提前致谢!

最佳答案

省略了代码审查的东西-

你有没有实现过

std::string getPlayer(int playerNum);

代替

std::string playerManager::getPlayer(int playerNum);

?

另外 - 开关:

switch(playerNum)
{
case 1: return(player1);break;
case 2: return(player2);break;
case 3: return(player3);break;
case 4: return(player4);break;
case 5: return(player5);break;
case 6: return(player6);break;
case 7: return(player7);break;
case 8: return(player8);break;
case 9: return(player9);break;
case 10: return(player10);break;
}

除此之外 - 糟糕的代码。假设我是您的客户,我告诉您我想要 11 个玩家而不是 10 个。然后呢?

关于C++/'string' 未在此范围/错误中声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11638128/

相关文章:

c++ - 先前声明的变量和常量的智能感知

c++ - 在 C++ 中生成 AST

c++ - 在 C++ 的模板函数中使用正确的字符串文字

python - 使用sqlalchemy从postgis数据库获取经度和纬度

c++ - 内联公共(public)接口(interface)的方法

java - 如何将互联网上的 XML 文件加载到字符串中

C# - 求和列表<string[]>

javascript - 将循环函数的值存储到变量中,javascript

c - 如何编写 C 字符串函数 : strncpy , strncat 和 strncmp

c++ - OpenCV,网络摄像头显示的动态修改