Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I am getting the following error: Multiple definition of `main'

I have created a new project, there are two c++ files in it:

File 1

#include <iostream>

 using namespace std;

int main()
{
    cout<<"Hello World";
    //fflush(stdin);
    //getchar();
    return 0;
}

File 2

#include <iostream>

using namespace std;

int main()
{
    cout<<"Demo Program";
    return 0;
}

When I press Build project and Run, I get error. How do I run these files?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
662 views
Welcome To Ask or Share your Answers For Others

1 Answer

You cannot have two main functions in the same project. Put them in separate projects or rename one of the functions and call it from the other main function.

You can never have more than one main() function in your project since it is the entrypoint, no matter what the parameter list is like.

You can however have multiple declarations of other functions as long as the parameter list is different (function overloading).

File 1

#include <iostream>

using namespace std;

int main()
{
    cout<<"Hello World";
    otherFunction();
    return 0;
}

File 2

#include <iostream>

using namespace std;

void otherFunction()
{
    cout<<"Demo Program";
}

Dont forget the appropiate #includes.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...