我正在运行一个非常简单的 C++ 程序:
#include <list>
#include <vector>
int main(int argc, char **args) {
}
我转到命令提示符并编译并运行:
g++ whatever.cpp
a.exe
通常这工作得很好。它编译得很好,但是当我运行它时,它说 Access Denied 和 AVG 弹出告诉我已经检测到威胁Trojan Horse Generic 17.CKZT
。我尝试使用 Microsoft Compiler (cl.exe) 再次编译,它运行良好。所以我回去,并补充说:
#include <iostream>
使用 g++ 编译并运行。这次它工作得很好。
那么谁能告诉我为什么 AVG 会将空的 main 方法报告为特洛伊木马,但如果包含 iostream 标头则不会?
更新:
我在 main 方法中添加了一个 return 语句,现在我发现如果我返回 0,我只会得到错误。任何其他返回值,它似乎工作正常。
这里发生了什么?