Ошибка C ++ с типами данных - PullRequest
1 голос
/ 07 января 2012

Я получаю сообщение об ошибке компилятора всякий раз, когда запускаю это ... Я совершенно уверен, что это просто что-то глупое, что я упускаю из виду, поэтому я решил позволить вам, ребята, попробовать.

#include <iostream>
#include <string>

using namespace std;

class hi
{
public:
    string run()
    {
        hi = "Hello.";
        return hi;
    }
private:
    string hi;
}

int main()
{
    bool end = false;
    string in = "";
    string out = "";

    hi hi;

    while(end != true)
    {
        cout << "Input a Command: ";
        cin >> in;
//        if(in == "help")
//        {
//            out = help.run;
//        }
        if(in == "hi")
        {
            out = hi.run;
        }

        cout << out;
        in = "";
    }
    return 0;
}

Я продолжаю получать эти ошибки:

|6|error: new types may not be defined in a return type|
|6|note: (perhaps a semicolon is missing after the definition of 'hi')|
|18|error: two or more data types in declaration of 'main'|
||=== Build finished: 2 errors, 0 warnings ===|

Ответы [ 2 ]

1 голос
/ 07 декабря 2013

Вы забыли точку с запятой после определения класса.

1 голос
/ 07 января 2012

В конце вашей программы вы закрываете больше фигурных скобок, чем открыли. Вам нужно снять фигурную скобку вправо до return 0;

Также вам нужно завершить определение class hi точкой с запятой после закрывающей фигурной скобки, прямо перед определением main().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...