Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Visual C++ vs Visual C# , which is the best to learn? [closed]

Tags:

c#

visual-c++

I've done my C++ classes and practices after which I started learning Visual C++ using book Ivor Horton's Visual C++. The problem is that I am unable to understand the language of this book and badly trying to understand the codes. I want to learn Visual C++ for Windows application development and making my future in that (also because I already know C++).

Some of my friends told me to switch to C# since it has many library function to create GUI etc and told me it's hard to code Windows applications in Visual C++.

Now in these holidays I am going to join classes, can you help me which language I should stick to, and which one will be easy?

From very beginning I want to learn Visual C++ and sometimes I think it's hard when I don't understand concept in reference books etc.

Any help will be very appreciated, thanks a lot for taking your precious time.

like image 981
M3taSpl0it Avatar asked Dec 30 '09 18:12

M3taSpl0it


People also ask

Is Visual C# and C# the same?

C# and Visual C# are both the same. When you use Visual Studio for C# development, it is called Visual C# . Consider Visual C# as an implementation of C#.

What is the difference between Visual C# and Visual C++?

Visual C++ and Visual C# are not languages nor GUI frameworks; they are Integrated Development Environments - IDEs. This means they are text editors tailored to the task of development. Visual C++ lets you code in C++, Visual C# lets you code in C#. Also, both let you create GUIs in a point-and-click manner.

Is Visual C++ the same as C++?

C++ is a programming language and Visual C++ is an IDE for developing with languages such as C and C++. VC++ contains tools for, amongst others, developing against the . net framework and the Windows API. actually, Visual Studio is the IDE, Visual C++ is the C++ compiler of that IDE.

Is Visual Studio different from Visual C++?

Microsoft Visual C++ is available as part of Visual Studio, Microsoft's integrated development environment (IDE). A powerful code editor, Visual Studio provides many useful functions for navigating large codebases; within Visual Studio, Visual C++itself consists of a C++ compiler and a set of C++ libraries and tools.


1 Answers

Visual C++ and Visual C# are not languages nor GUI frameworks; they are Integrated Development Environments - IDEs. This means they are text editors tailored to the task of development.

Visual C++ lets you code in C++, Visual C# lets you code in C#. Also, both let you create GUIs in a point-and-click manner.

Sounds like what you really want to do is create GUIs. In that case, without having further information, I recommend you go for C#. It is a much cleaner language than C++, it has fewer ways to shoot yourself in the foot, and it provides access to the immensely useful .NET framework.

C# features that C++ doesn't have:

  • Fully automatic memory management
  • Lambda functions¹
  • Type inference¹
  • Reflection
  • Remoting
  • Automatic serialization
  • True entity types
  • Properties
  • Database integration via LINQ
  • Convenient functional-style programming via LINQ
  • No header files
  • No undefined behavior
  • Direct interoperability with many languages
  • Compile once, run everywhere

¹ these features have been added to C++ in the C++11 standard.

C++ features that C# doesn't have

  • Template metaprogramming
  • Typedefs
  • Zero-overhead principle
  • Means to enforce const-correctness
  • Mature compilers that produce extremely optimized code nowadays
  • Much wider platform support
like image 55
Stefan Monov Avatar answered Oct 21 '22 01:10

Stefan Monov