IAmYourFaja
IAmYourFaja

Reputation: 56894

Native C++ programs in Visual Studio

I'm confused in my understanding of the relationship between Visual Studio and .NET. I want to write a C++ application, but not a ".NET C++" application. By this, I mean that my understanding is that everything built in .NET land gets compiled to a CLI-compatible intermediary code (just like "JVM" languages like Java and Groovy compile to the same bytecode).

But I don't want my app compiled to an intermediary bytecode...I want it compiled down to raw binary!

Does Visual Studio do this? Or is .NET forced down my throat the minute I choose VS as my C++ IDE? If so, whats a "raw C++" alternative to VS?

Thanks in advance!

Upvotes: 3

Views: 422

Answers (3)

Anastasia Rushda
Anastasia Rushda

Reputation: 128

there is that /clr compiler switch when compiling a c++ app. Without it, you will get a pure native binary and cannot use any. NET specific features within your code.

By selecting a project template or by setting the corresponding project property, VS will automatically choose if the switch is on or off.

Upvotes: 3

JaredPar
JaredPar

Reputation: 754545

Visual Studio still supports 100% native C++ applications as will as managed applications. When creating a new app just choose the "Win32 Console Application" to create a native application. For existing applications you can change / verify by doing the following

  • Right Click on the project and select "Properties"
  • Navigate to Configuration Properties -> C/C++
  • Make sure that "Common Language Runtime Support" is set to "No Common Language Runtime Support"

Upvotes: 2

ildjarn
ildjarn

Reputation: 62975

Visual Studio is an IDE, which is orthogonal to any specific language or compiler.

Visual C++ is a compiler that supports the C, C++, and C++/CLI languages.

In Visual Studio, create a Visual C++ project from one of the 'Win32' (as opposed to 'CLR') project templates and your program won't have any .NET dependency.

Upvotes: 4

Related Questions