locked
Is managed c++ heavily used? RRS feed

  • Question

  • User-748598265 posted
    The subject says it all already: Are c++.net programmers here? Is c++ heavily used in .net development?
    Sunday, December 21, 2003 3:08 PM

All replies

  • User-1087604911 posted
    Not very much at all. I tried making a career of it the last three years: wrote a book, wrote articles and taught people to very little interest. Most people have given up on the complexities of the language and the language itself for good in favor of C#. I did use it in a number of jobs for Interop through IJW but that's about it. Thats still its sweet spot but I'm afraid that its just not worth the effort overall when I (and most everyoen) can do things in C# in 1/10 the time. After 15 years as a C++ programmer, I have moved on too.
    Monday, December 22, 2003 8:36 AM
  • User958813738 posted
    MC++ is a great way to progressively migrate existing unmanaged C++ code base to .NET. It is the best way to communicate to unmanaged C++ server code from a C#/VB.NET client, especially if you have a complex server logic that you'd want to keep as is. Hope this helps, Appan
    Monday, December 22, 2003 3:38 PM
  • User-1087604911 posted
    Right, all of which is Interop. For writing new managed code, its too much bother.
    Wednesday, December 24, 2003 8:49 AM
  • User-1087604911 posted
    I have a whole bunch of articles on how to progressively migrate. See http://www.ondotnet.com/pub/a/dotnet/2003/01/13/intromcpp.html http://www.ondotnet.com/pub/a/dotnet/2003/03/03/mcppp2.html http://www.ondotnet.com/pub/a/dotnet/2002/11/18/everettcpp.html
    Wednesday, December 24, 2003 9:11 AM
  • User743145481 posted
    I doubt this will be looked at, but I initially looked at .NET through C++.NET and I did not at all like what I saw. It was overly complicated in way too many ways and even though I am sure that it was not as bad as I initially thought, I am definitely glad C# was there or else I would be a C++ programmer using PHP on the net right now. I still enjoy C++, but I will never go back to C++.NET until I am forced to do it.
    Monday, January 5, 2004 6:05 AM
  • User958813738 posted
    True that C# is favored over Managed C++ in many cases. However, MC++ is still a good choice when * Rapidly migrating unmanaged C++ applications to the .NET Framework * Accessing a C++ component from a .NET Framework–compatible language * Accessing .NET Framework classes from unmanaged code * Using managed and unmanaged code in one executable file Refer to When to Use Managed Extensions for C++ for more information. Hope this helps, Appan
    Monday, January 5, 2004 10:33 PM
  • User92463249 posted
    Hi, ManagedCode (or anyone who knows the answer) Can you please tell me what makes C# 10 times faster than C++? Thanks in advance Feng
    Wednesday, March 31, 2004 7:29 PM
  • User1025213086 posted
    It isn't very practical to compare two languages so close together, but C#, designed by Microsoft, was designed to be as powerful as C++, but as quickly to deploy as another language such as Visual Basic. Symantically, C# gets rids of usesless statements such as #using mscorlib.dll #using System.dll using namespace System; C# only requires, using System;
    Wednesday, March 31, 2004 8:29 PM
  • User1062760278 posted
    Hello, Currently using C++.net for speed critical applications such as backend COM+ components If speed is not an absolute requirement, C# is used. 25% in C++, the remainder in C# or VB. Regards Robin.
    Sunday, June 13, 2004 5:45 PM
  • User479087710 posted
    c# is NOT 10x faster than c++ (or managed c++). c# MAY be 10x more productive to use than c++. In fact c++ (managed or unmanaged) is preferred for applications that require intense computation or real time interaction. Both languages compile to the same intermediate language, MSIL (aka CIL, aka IL). The c++ compiler is just more mature and performs more optimizations than the c# version. You could, however, hand optimize the IL compiled from c# and get something close to c++, but I doubt it would be worth your time. There are, however, some operations that are just going to be faster in a non-managed environment than those in a managed environment. Computation intensive procedures that could benefit from aggressive use of register variables may be one, but then again the c# compiler might optimize the IL to exactly what you want. Currently, the added indirection of JIT'ing your code at runtime is going to be slightly slower than an unmanaged executable. But, then again, since the Microsoft JIT compiler has more information at runtime than any c++ compiler could have at build-time there may be more room for optimization. As for programmer productivity... Yeah, C# is WAY more productive than C++. C# takes the cake. Code is clean, easy to write and debug, no pointer manipulation or any other confusing or error-prone machinations. (Although it is available if you need it). For what it is worth, C# is so close to Java that you can learn a lot about C# from reading Java implementations. C# still has access to DTC and all the COM bells and whistles plus a lot more off-the-shelf goodness. Stick with C# and as the other posters said, implement bottlenecks, computation intensive algorithms, and performance-critical components in C++.
    Monday, July 5, 2004 6:58 PM