gpt4 book ai didi

c++ - eclipse MinGW : how to have multi main in one project

转载 作者:太空宇宙 更新时间:2023-11-04 04:54:50 27 4
gpt4 key购买 nike

当我在Eclipse上运行一个Java程序时,每次我运行一个文件,编译器都会检查它是否有main,如果有,我就可以运行。如果没有,我不能。

但是,当我使用 MinGW 在 Eclipse 上运行 C++ 程序 (CDT) 时,编译器无法像那样工作。编译后,无论我从哪个文件运行,编译器都会搜索整个项目以找到 ONE MAIN 因此,如果我有多个主文件,我将收到错误。

请告诉我在 Eclipse 中,如何处理 C++ 编译器以具有多个主文件并像在 Java 上一样工作:它只是在我运行的文件上找到 main

@: 我有多个主文件只是为了调试目的。 !!!

谢谢:)

最佳答案

与 C/C++ 中的 java 不同,您只能有一个 main:

The main() function is special; normally every C and C++ program must define it exactly once.

( source )

但是:作为解决方法,您可以使用预处理器来决定要使用哪个main

示例:

#ifdef FIRST_MAIN
int main(int argc, char** argv)
{
printf("first");

return (EXIT_SUCCESS);
}
#elif SECOND_MAIN
int main(int argc, char** argv)
{
printf("second");

return (EXIT_SUCCESS);
}
#else
int main(int argc, char** argv)
{
printf("default");

return (EXIT_SUCCESS);
}
#endif

现在您可以通过在编译时设置适当的标志来决定要使用哪个。如果未设置,您将使用默认 一个(#else 部分)。

替代方案:从编译中排除所有包含 main 函数的文件,只包含您需要的文件。但是,这仅在这些文件不包含超过 main 的情况下才有效。

关于c++ - eclipse MinGW : how to have multi main in one project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10161194/

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