Error: C++ requires a type specifier for all declarations

Error: C++ requires a type specifier for all declarations

我是 C++ 的新手,我一直在阅读这本书。看了几章,想到了自己的想法。我尝试编译下面的代码,但出现以下错误:

||=== Build: Debug in Password (compiler: GNU GCC Compiler) ===| /Users/Administrator/Desktop/AppCreations/C++/Password/Password/main.cpp|5|error: C++ requires a type specifier for all declarations| ||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 2 second(s)) ===|.

我不明白代码有什么问题,谁能解释一下问题在哪里以及如何解决?看了其他帖子,还是看不懂

谢谢。

#include <iostream>

using namespace std;

main()
{
    string password;
    cin >> password;
    if (password == "Lieutenant") {
        cout << "Correct!" << endl;
    } else {
        cout << "Wrong!" << endl;
    }

}

您需要包含字符串库,您还需要为您的 main 函数提供一个 return 类型,并且您的实现可能需要您为 main 声明一个显式的 return 语句(一些实现如果您没有明确提供,请添加一个隐含的);像这样:

#include <iostream>
#include <string> //this is the line of code you are missing

using namespace std;

int main()//you also need to provide a return type for your main function
{
    string password;
    cin >> password;
    if (password == "Lieutenant") {
        cout << "Correct!" << endl;
    } else {
        cout << "Wrong!" << endl;
    }
return 0;//potentially optional return statement
}

您需要为 main 声明 return 类型。在合法的 C++ 中,这应该始终是 int。在许多情况下,main 的最后一行将是 return 0; - 即成功退出。 0 以外的任何内容都用于指示错误情况。

加一分:

如果您尝试在 class 中分配变量,您也可能会得到完全相同的错误。因为在 C++ 中,您可以在 class 中初始化变量,但不能在变量声明之后进行赋值,但是如果您尝试在 class 中定义的函数中赋值,那么它在 C++ 中将工作得很好。