jia hilegass
jia hilegass

Reputation: 503

Differences between empty project and win32 console project in Visual Studio 2005

When I use GCC with no IDE, I just need to create *.h file and *.cpp files.

But in VS2005, there are two ways to create an empty project, first way is to use "general -> Empty Project", second way is "Win32 -> Win32 console project ->next ->empty project".

The official example recommends the second way while I preffer the first way.

Then what's the differeces between them?

In win32 console project, "subsystem" is "console", "Character Set" is "unicode". But in empty project, "subsystem" is "NoSet", "Character Set" is "multi bytes". What does this mean?

Upvotes: 3

Views: 1711

Answers (3)

Ken
Ken

Reputation: 1

The #include in the console project is not ANSI standard and will not work on other compilers.

Upvotes: 0

Severin Pappadeux
Severin Pappadeux

Reputation: 20080

To add to the @JoachimPileborg answer, what matters is project subsystem specification. For VS2005, there is a list of targeted subsystems: https://msdn.microsoft.com/en-us/library/fcc1zstk(v=vs.80).aspx

For empty project, it won't be set.

For Console, it would set to CONSOLE

I would recommend setting it to win32 console project, but remove precompiled headers flag and make it empty

Upvotes: 2

Some programmer dude
Some programmer dude

Reputation: 409166

An "Empty project" is just that: Empty. It has no specific settings at all, you need to set things like that yourself. For an empty "Console project" the IDE sets up the project with nice flags and settings for a console project, but doesn't add any files.

If you want a console program, then you most certainly should use the console project type.

Upvotes: 3

Related Questions