Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Managed C++ or C#

Managed C++ or C#

Scheduled Pinned Locked Moved The Lounge
csharpc++dotnetquestionlearning
31 Posts 14 Posters 1 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G Garth Watkins

    What's your opinion ? Most of my development has been in C++ using MFC for the last couple of years. I'd like to take advantage of the .net framework, but I'm hesitant of learning a new language just when I'm getting comfortable with C++.

    P Offline
    P Offline
    Paul Watson
    wrote on last edited by
    #11

    What do you develop? For us web-developers, C# and ASP.NET is a no-brainer (I am not referring to the LAMP crowd.) For WinApp developers though .NET is a tougher decision. regards, Paul Watson South Africa The Code Project

    N 1 Reply Last reply
    0
    • G Garth Watkins

      What's your opinion ? Most of my development has been in C++ using MFC for the last couple of years. I'd like to take advantage of the .net framework, but I'm hesitant of learning a new language just when I'm getting comfortable with C++.

      M Offline
      M Offline
      Marc Clifton
      wrote on last edited by
      #12

      Well, here's my 2c. The Managed C++ syntax is awful. The .NET framework is nice, but it lacks a lot of things that are basically second nature in MFC. I haven't written a single serious app yet that doesn't require some P/Invoke somewhere because .NET fails to provide some necessary functionality. C# is easy to learn. Knowing both, you can pick which language and framework best meets your needs. Marc MyXaml Advanced Unit Testing

      N 1 Reply Last reply
      0
      • P Paul Watson

        What do you develop? For us web-developers, C# and ASP.NET is a no-brainer (I am not referring to the LAMP crowd.) For WinApp developers though .NET is a tougher decision. regards, Paul Watson South Africa The Code Project

        N Offline
        N Offline
        Nish Nishant
        wrote on last edited by
        #13

        Paul Watson wrote: I am not referring to the LAMP crowd What's LAMP, Paul?


        My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

        P D 2 Replies Last reply
        0
        • M Marc Clifton

          Well, here's my 2c. The Managed C++ syntax is awful. The .NET framework is nice, but it lacks a lot of things that are basically second nature in MFC. I haven't written a single serious app yet that doesn't require some P/Invoke somewhere because .NET fails to provide some necessary functionality. C# is easy to learn. Knowing both, you can pick which language and framework best meets your needs. Marc MyXaml Advanced Unit Testing

          N Offline
          N Offline
          Nish Nishant
          wrote on last edited by
          #14

          Marc Clifton wrote: The Managed C++ syntax is awful Shouldn't that be "was awful", Marc? The new C++/CLI syntax is far superior to the old syntax and is at par with C# as a first class CLI language. Marc Clifton wrote: I haven't written a single serious app yet that doesn't require some P/Invoke somewhere because .NET fails to provide some necessary functionality. Same here :-)


          My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

          D M 2 Replies Last reply
          0
          • N Nish Nishant

            Paul Watson wrote: I am not referring to the LAMP crowd What's LAMP, Paul?


            My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

            P Offline
            P Offline
            Paul Watson
            wrote on last edited by
            #15

            It stands for Linux Apache MySQL and Perl. I think Lauren is quite into it. regards, Paul Watson South Africa The Code Project

            N 1 Reply Last reply
            0
            • P Paul Watson

              It stands for Linux Apache MySQL and Perl. I think Lauren is quite into it. regards, Paul Watson South Africa The Code Project

              N Offline
              N Offline
              Nish Nishant
              wrote on last edited by
              #16

              Paul Watson wrote: It stands for Linux Apache MySQL and Perl. I think Lauren is quite into it. Oh okay, thanks.


              My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

              1 Reply Last reply
              0
              • R raymonxo

                Yes, C# is easier and allows you to be more productive when developing in a purely managed environment. Please explain how Managed C++ is more powerful when developing in a purely managed environment :confused:. I don't believe this to be true.

                N Offline
                N Offline
                Nish Nishant
                wrote on last edited by
                #17

                raymonxo wrote: Please explain how Managed C++ is more powerful when developing in a purely managed environment . I don't believe this to be true. See :- C++: The Most Powerful Language for .NET Framework Programming[^]


                My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                1 Reply Last reply
                0
                • N Nish Nishant

                  Paul Watson wrote: I am not referring to the LAMP crowd What's LAMP, Paul?


                  My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                  D Offline
                  D Offline
                  Daniel Turini
                  wrote on last edited by
                  #18

                  Nishant S wrote: What's LAMP, Paul? L inux A pache M ySql P erl/PHP Yes, even I am blogging now!

                  1 Reply Last reply
                  0
                  • R raymonxo

                    I forgot to mention, I recommend using C# if you are developing new applications for .NET. C# has a much cleaner syntax than C++; this will be especially true with .NET 2.0 features such as generics. I used to develop in C++ and now that I've been using C# for more than a year I can't imagine going back. C# is so clean and intuitive.

                    N Offline
                    N Offline
                    Nish Nishant
                    wrote on last edited by
                    #19

                    raymonxo wrote: C# has a much cleaner syntax than C++; this will be especially true with .NET 2.0 features such as generics. C++/CLI not only supports generics but also supports templates with managed and unmanaged types giving programmers more options. Nish


                    My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                    J A 2 Replies Last reply
                    0
                    • N Nish Nishant

                      Marc Clifton wrote: The Managed C++ syntax is awful Shouldn't that be "was awful", Marc? The new C++/CLI syntax is far superior to the old syntax and is at par with C# as a first class CLI language. Marc Clifton wrote: I haven't written a single serious app yet that doesn't require some P/Invoke somewhere because .NET fails to provide some necessary functionality. Same here :-)


                      My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                      D Offline
                      D Offline
                      Daniel Turini
                      wrote on last edited by
                      #20

                      Nishant S wrote: Shouldn't that be "was awful", Marc? No: it is awful, until MS releases the new C++. While we can play and test with the beta version of the new VS, it's at least irresponsible developing a production software with a beta product which the maker (MS) admits to have tons of bugs and reduced performance due to presence of debugging code. Yes, even I am blogging now!

                      N 1 Reply Last reply
                      0
                      • D Daniel Turini

                        Nishant S wrote: Shouldn't that be "was awful", Marc? No: it is awful, until MS releases the new C++. While we can play and test with the beta version of the new VS, it's at least irresponsible developing a production software with a beta product which the maker (MS) admits to have tons of bugs and reduced performance due to presence of debugging code. Yes, even I am blogging now!

                        N Offline
                        N Offline
                        Nish Nishant
                        wrote on last edited by
                        #21

                        Daniel Turini wrote: While we can play and test with the beta version of the new VS, it's at least irresponsible developing a production software with a beta product which the maker (MS) admits to have tons of bugs and reduced performance due to presence of debugging code. Point conceded. Nish


                        My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                        1 Reply Last reply
                        0
                        • G Garth Watkins

                          What's your opinion ? Most of my development has been in C++ using MFC for the last couple of years. I'd like to take advantage of the .net framework, but I'm hesitant of learning a new language just when I'm getting comfortable with C++.

                          N Offline
                          N Offline
                          Nemanja Trifunovic
                          wrote on last edited by
                          #22

                          The real problem with Managed C++ is that they are rewriting it from scratch, and there is no point in learning it now (I did, and now I am pissed off, but who cares?). As for the "horrible syntax", I've heard this complaint mostly from people who have never really used MC++ (in real projects). Yes it is ugly, but C-like languages have ugly syntax in general; if you are very concerned about syntax, learn Delphi or Python. As for C#, personally I don't like it at all, but I use it whenever I am told to use it and whenever it makes sense to use it (ASP.NET, for instance). To sum up: you have three real choices: 1) Learn C# now. 2) Wait for VS 2005 and then learn Managed C++ (or C++/CLI how they call it now). 3) Learn C# now and Managed C++ when VS 2005 is released. My vote goes for 3)


                          My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.

                          1 Reply Last reply
                          0
                          • N Nish Nishant

                            raymonxo wrote: C# has a much cleaner syntax than C++; this will be especially true with .NET 2.0 features such as generics. C++/CLI not only supports generics but also supports templates with managed and unmanaged types giving programmers more options. Nish


                            My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                            J Offline
                            J Offline
                            jan larsen
                            wrote on last edited by
                            #23

                            Nishant S wrote: C++/CLI not only supports generics but also supports templates with managed and unmanaged types giving programmers more options. The new C# version also supports generics... "After all it's just text at the end of the day. - Colin Davies "For example, when a VB programmer comes to my house, they may say 'does your pool need cleaning, sir ?' " - Christian Graus

                            N 1 Reply Last reply
                            0
                            • N Nish Nishant

                              Marc Clifton wrote: The Managed C++ syntax is awful Shouldn't that be "was awful", Marc? The new C++/CLI syntax is far superior to the old syntax and is at par with C# as a first class CLI language. Marc Clifton wrote: I haven't written a single serious app yet that doesn't require some P/Invoke somewhere because .NET fails to provide some necessary functionality. Same here :-)


                              My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                              M Offline
                              M Offline
                              Marc Clifton
                              wrote on last edited by
                              #24

                              Nishant S wrote: Shouldn't that be "was awful", Marc? I was going to reply, but Daniel said it all. Marc MyXaml Advanced Unit Testing

                              1 Reply Last reply
                              0
                              • J jan larsen

                                Nishant S wrote: C++/CLI not only supports generics but also supports templates with managed and unmanaged types giving programmers more options. The new C# version also supports generics... "After all it's just text at the end of the day. - Colin Davies "For example, when a VB programmer comes to my house, they may say 'does your pool need cleaning, sir ?' " - Christian Graus

                                N Offline
                                N Offline
                                Nish Nishant
                                wrote on last edited by
                                #25

                                jan larsen wrote: The new C# version also supports generics... Yes it does, Jan, but then I never said it didn't, did I? :-) My post was a reply to a comment that said C# supported generics in 2.0.


                                My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                                J 1 Reply Last reply
                                0
                                • G Garth Watkins

                                  What's your opinion ? Most of my development has been in C++ using MFC for the last couple of years. I'd like to take advantage of the .net framework, but I'm hesitant of learning a new language just when I'm getting comfortable with C++.

                                  A Offline
                                  A Offline
                                  adrian cooper
                                  wrote on last edited by
                                  #26

                                  Personally i would stick with C++. Its like this, if your at home with C++, then i would invest take a look at the new C++/CLI. The boys at Microsoft seem to be doing some good work over there and have cleaning up the synatax from the old MC++. Plus you get to keep the toolset youve built up using the very powerful standard template library via STL.NET. Then theres deterministic destruction c++ way!! yes you get to write destructors and get the ability to put Managed types on the stack! how cool is that! Basically your getting everything you can do in C# plus loads more goodies! And coupled with the new style syntax you'd be silly not to check it out. I think you can download a beta of the C++/CLI Express compiler too from the msdn website. Its deffo gets my thumbs up, and i can't wait! :) ade me; while(myKitchen.beerInFridge()) { me.watchTV(); me.consumeBeer(myKitchen.getBeerCan()); }

                                  1 Reply Last reply
                                  0
                                  • G Garth Watkins

                                    What's your opinion ? Most of my development has been in C++ using MFC for the last couple of years. I'd like to take advantage of the .net framework, but I'm hesitant of learning a new language just when I'm getting comfortable with C++.

                                    R Offline
                                    R Offline
                                    Roland Bar
                                    wrote on last edited by
                                    #27

                                    I prefer C# as the managed C++ code with its macros looks really ugly ... And C# was made for the .net framework ... Greets Roland


                                    Wenn Du diesen Satz irgendwo liest, ignoriere ihn.

                                    1 Reply Last reply
                                    0
                                    • N Nish Nishant

                                      raymonxo wrote: C# has a much cleaner syntax than C++; this will be especially true with .NET 2.0 features such as generics. C++/CLI not only supports generics but also supports templates with managed and unmanaged types giving programmers more options. Nish


                                      My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                                      A Offline
                                      A Offline
                                      adrian cooper
                                      wrote on last edited by
                                      #28

                                      this is so cool.. deffo is the best of both worlds, as there are differences between templates and generics. for example generics dont allow non-type parameters and doesnt have the ability for user-defined specialization! But having the ability to choose between the two in C++ is the jackpot! Bring home the goodness!!! ade me; while(myKitchen.beerInFridge()) { me.watchTV(); me.consumeBeer(myKitchen.getBeerCan()); }

                                      1 Reply Last reply
                                      0
                                      • N Nish Nishant

                                        wb wrote: I think C# is easy to learn, the syntax is much like C++ (but also as VB ) and you have the foreach loop! C++/CLI has the for each keyword too (it's spaced in C++ though)


                                        My blog on C++/CLI, MFC/Win32, .NET - void Nish(char* szBlog); My MVP tips, tricks and essays web site - www.voidnish.com

                                        A Offline
                                        A Offline
                                        adrian cooper
                                        wrote on last edited by
                                        #29

                                        dont forget if you stick with C++ you additionally get to keep the for_each algorithm too, along with all the other powerful C++ STL algorithms! ade me; while(myKitchen.beerInFridge()) { me.watchTV(); me.consumeBeer(myKitchen.getBeerCan()); }

                                        1 Reply Last reply
                                        0
                                        • W wb

                                          I think C# is easy to learn, the syntax is much like C++ (but also as VB :wtf: ) and you have the foreach loop! :)

                                          D Offline
                                          D Offline
                                          devvvy
                                          wrote on last edited by
                                          #30

                                          any language is easy to learn (well... there're those small prints...) it's the framework you use that takes time to learn and master. For instance, Java may take you a day to learn if you have background in C++. J2EE may take you a month to get productive. .NET, however, is the most intuitive framework I've seen thus far - it's really a productivity tool - ie. tools that help developers to get most done in shortest time. Norman Fung

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups