gpt4 book ai didi

c++ - 未解析的外部符号 _main 在函数 ___tmainCRTStartup 中引用

转载 作者:行者123 更新时间:2023-11-30 00:38:31 26 4
gpt4 key购买 nike

当我尝试编译我的 C++ 控制台应用程序时,我一直收到此错误:“函数 __tmainCRTStartup 中引用了未解析的外部符号 main”。我做了一些搜索,我所能找到的只是将我的“链接器”从 Windows 更改为控制台,反之亦然。这没有用,我什至尝试创建一个新的控制台应用程序。

我不确定是什么原因造成的,有没有可能 template <typename T>是因为它出现在两个文件中而造成混淆吗?这里的任何帮助将不胜感激。

代码如下:

主要.cpp:

#include <iostream>
#include "tools.h"
using namespace tools;

template <typename T>
int main()
{
T input1;
T input2;

std::cout << "Enter in 1st number: " << endl;
std::cin >> input1;
std::cout << "Enter in 2nd number: " << endl;
std::cin >> input2;
std::cout << "num1 - num2 = [" << numberDifference(input1, input2) << "]" << endl;
getchar();
getchar();

return 0;
}

工具.h:

#include <iostream>
namespace tools
{
template <typename T>
T numberDifference(T num1, T num2)
{
if(num1 > num2)
return num1 - num2;
else
return num2 - num1;
}
};

最佳答案

删除 main 函数的 template 定义。

或者至少从适当的 main 函数中调用它。

例如

template< typename T >
int templated_main( int c, char** argv )
{
// What was in your original main function....

}

int main( int c, char** argv )
{
return templated_main<int>( c, argv );
}

关于c++ - 未解析的外部符号 _main 在函数 ___tmainCRTStartup 中引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10635019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com