如何从另一个头文件cpp文件调用主函数

时间:2019-07-13 15:52:16

标签: c++ header-files main

我想从另一个头文件cpp文件调用main函数。其中main包含头文件。 我们称main.cpp有一个头文件。我可以从头文件cpp调用main.cpp的main吗?

这是main.cpp

    #include "another.h"
    int main()
    {
        cout<<"Main";
    }

这是另一个。h

   class another
    {
       public:
               void another_func(void);
    };

这是another_func.cpp单独的文件

    void another::another_func(void)
    {
       //how do i call main()
    }

2 个答案:

答案 0 :(得分:1)

C ++标准不允许使用您自己的代码调用main。如果这样做,那么您将处于“未定义行为”领域,并且整个程序将变得毫无意义。

只有实现可以调用main作为程序的入口点。

答案 1 :(得分:0)

main的特殊之处在于它不能被调用(包括从内部调用),其地址不能被提取等等。

所以您最好选择类似的东西

#include "another.h"
int main()
{
    return Main();
}
int Main() {
    std::cout<<"Main\n";
    return 0;
}

这是另一个。h

class another
{
   public:
           void another_func(void);
};

这是another_func.cpp单独的文件

void another::another_func(void)
{
    Main();
}