我决定学习C ++ DirectX,但是每当编译/调试代码,甚至是最简单的代码时,我都会得到LNK2019:函数“ int __cdecl_main(void)”(?invoke_main @@ YAHXZ)中引用的未解析的外部符号_WinMain @ 16错误?和LNK1120。

我测试了两个不同的代码,一个与类,另一个仅与int函数:

#pragma once

class Main
{
public:
    Main();
    ~Main();
};

Main::Main(int x)
{

}

Main::~Main()
{

}

int example()
{
    return 0;
}

最佳答案

首先,您应该帮自己一个忙,并从书中正确学习C ++。 C ++的设计者和实现者Bjarne Stroustrup有一本很棒的书,它将教给您很多知识:Programming: Principles and Practice using C++

您的程序无法链接,因为没有main()函数,这是必需的。

As Steephen has pointed out already in his answer,您可以更改程序,使其至少包括以下内容:

int main()
{
    return 0;
}


看起来您试图用main()代替example(),但是您的程序和C ++程序需要有一个main(),因为它是程序的主要入口点。您可能还想阅读http://www.cplusplus.com/doc/tutorial/program_structure/

关于c++ - 只需简单的代码即可获得LNK2019和LNK1120,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32751852/

10-11 23:23
查看更多