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. Really frustrated when moving from C# to C++

Really frustrated when moving from C# to C++

Scheduled Pinned Locked Moved The Lounge
csharpc++
88 Posts 42 Posters 2 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.
  • _ _beauw_

    My observation is that people who discount the importance of knowing how things really work (i.e. how things work in the absence of an unseen, out-of-thread garbage collector) tend to be people who look at everything from a very PC-centered perspective. On a PC, or anything resembling a PC, it probably does not make sense for application code to need to do anything special just to effect proper garbage collection. But a real computer scientist, or even a reasonably good (i.e. versatile) programmer, should realize that not everything is a PC, and that there is value to being able to run things on devices that are not PCs (e.g. microcontrollers retailing for $2). This is just one of a whole family of spurious, PC-centric arguments I see on the Internet, which has, after all, become a network largely comprised of PCs. Statements like "every application should have logging" or "every application should be OO" fall into the same category. Such assertions really seem nonsensical if one considers the code that runs inside of digital wristwatches, DVD drive controllers, and such.

    K Offline
    K Offline
    Keith Barrow
    wrote on last edited by
    #17

    Interesting, I hadn't considered the problem it that way, and I think for your points are valid. That said, I've only really developed for PC and I've only really been a .net developer professionally, I enjoy tinkering with other languages and I miss c++, which I use to write my dissertation. I think the deepest separation is between those who like programming and computing for its own sake, and those who do it solely as their day job. I think a large proportion of the latter group fall into your PC-centric category as this is what pays and what is easiest to get work in. Got my 5 anyway!

    Sort of a cross between Lawrence of Arabia and Dilbert.[^]
    -Or-
    A Dead ringer for Kate Winslett[^]

    L 1 Reply Last reply
    0
    • B bob16972

      I feel the same way about C++ to C#. I've found you still need to check for null just as often and C#, without the .NET library (libraries are really a different topic...IMHO), is hardly the C++ 2.0 most C/C++ programmers had been longing for. I would like a reinvented C/C++ without all the historical baggage but I'd like to keep pointers and references the way they are. I had high hopes for C# but I think they missed a great opportunity to "fix" what was wrong with C/C++ and instead ended up trying to "fix" what was wrong with Java.

      C Offline
      C Offline
      CPallini
      wrote on last edited by
      #18

      bob16972 wrote:

      and instead ended up trying to "fix" what was wrong with copy Java.

      FFY.

      If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
      This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
      [My articles]

      B 1 Reply Last reply
      0
      • R Rajesh R Subramanian

        C# to C++?! You shouldn't expect that move to be easy, and you should in fact be happy that you were not moving to C.

        "Real men drive manual transmission" - Rajesh.

        C Offline
        C Offline
        CPallini
        wrote on last edited by
        #19

        You shouldn't reveal we C programmers are not friendly with intruders.

        If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
        This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
        [My articles]

        R 1 Reply Last reply
        0
        • L Lost User

          I've just moved to Python - you can't even tell a thread to terminate or pass variables by reference!

          Join the cool kids - Come fold with us[^] "Program as if the technical support department is full of serial killers and they know your home address" - Ray Cassick Jr., RIP

          C Offline
          C Offline
          CPallini
          wrote on last edited by
          #20

          Trollslayer wrote:

          Python

          we're talking about programming languages, aren't we? :rolleyes:

          If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
          This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
          [My articles]

          L 1 Reply Last reply
          0
          • OriginalGriffO OriginalGriff

            CPallini wrote:

            you should find moving to VB refreshing...

            ...the parts other programming languages don't want to go anywhere near?

            Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together. Manfred R. Bihy: "Looks as if OP is learning resistant."

            C Offline
            C Offline
            CPallini
            wrote on last edited by
            #21

            OriginalGriff wrote:

            ...the parts other programming languages don't want to go anywhere near?

            Exactly: that's VB garbage collector's definition.

            If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
            This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
            [My articles]

            1 Reply Last reply
            0
            • L Lost User

              I've just moved to Python - you can't even tell a thread to terminate or pass variables by reference!

              Join the cool kids - Come fold with us[^] "Program as if the technical support department is full of serial killers and they know your home address" - Ray Cassick Jr., RIP

              P Offline
              P Offline
              Pete OHanlon
              wrote on last edited by
              #22

              Trollslayer wrote:

              I've just moved to Python

              *Danger* Euphemism alert *Danger*

              Forgive your enemies - it messes with their heads

              My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

              L 1 Reply Last reply
              0
              • L Lost User

                And even worse, pointers do exist in C# and work very much the same way.

                "I just exchanged opinions with my boss. I went in with mine and came out with his." - me, 2011 ---
                I am endeavoring, Madam, to construct a mnemonic memory circuit using stone knives and bearskins - Mr. Spock 1935 and me 2011

                J Offline
                J Offline
                jschell
                wrote on last edited by
                #23

                CDP1802 wrote:

                And even worse, pointers do exist in C# and work very much the same way.

                That depends on a specific definition of some of the terms in the statement however. The following comes from the C# Language Specification in the Unsafe Code section. "The core C# language, as defined in the preceding chapters, differs notably from C and C++ in its omission of pointers as a data type. Instead, C# provides references and the ability to create objects that are managed by a garbage collector."

                1 Reply Last reply
                0
                • Steve EcholsS Steve Echols

                  You're really gonna miss the String class. :)


                  - S 50 cups of coffee and you know it's on! Code, follow, or get out of the way.

                  P Offline
                  P Offline
                  Pete OHanlon
                  wrote on last edited by
                  #24

                  Steve Echols wrote:

                  You're really gonna miss the String class

                  Why? STL has a perfectly good implementation of string handling.

                  Forgive your enemies - it messes with their heads

                  My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                  Steve EcholsS 1 Reply Last reply
                  0
                  • C CPallini

                    Real programmers don't use CStrings. In fact real programmers don't use strings at all. :-\

                    If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                    This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                    [My articles]

                    P Offline
                    P Offline
                    Pete OHanlon
                    wrote on last edited by
                    #25

                    CPallini wrote:

                    In fact real programmers don't use strings at all

                    Real programmers just use really thin ropes?

                    Forgive your enemies - it messes with their heads

                    My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                    Steve EcholsS C 2 Replies Last reply
                    0
                    • P Pete OHanlon

                      Steve Echols wrote:

                      You're really gonna miss the String class

                      Why? STL has a perfectly good implementation of string handling.

                      Forgive your enemies - it messes with their heads

                      My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                      Steve EcholsS Offline
                      Steve EcholsS Offline
                      Steve Echols
                      wrote on last edited by
                      #26

                      So does ATL/WTL/MFC/Boost. My point was that String is not built into the language, so when you're bouncing between different project types, you're always have to adjust, because they're all a little bit different.


                      - S 50 cups of coffee and you know it's on! Code, follow, or get out of the way.

                      • S
                        50 cups of coffee and you know it's on!
                        Code, follow, or get out of the way.
                      1 Reply Last reply
                      0
                      • P Pete OHanlon

                        CPallini wrote:

                        In fact real programmers don't use strings at all

                        Real programmers just use really thin ropes?

                        Forgive your enemies - it messes with their heads

                        My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                        Steve EcholsS Offline
                        Steve EcholsS Offline
                        Steve Echols
                        wrote on last edited by
                        #27

                        :laugh:


                        - S 50 cups of coffee and you know it's on! Code, follow, or get out of the way.

                        • S
                          50 cups of coffee and you know it's on!
                          Code, follow, or get out of the way.
                        1 Reply Last reply
                        0
                        • K Keith Barrow

                          There are two ways to look at this, either: a) once you have figured out how pointers and referencing works (in which case you'll be a "man") --or-- b) you just give up as it is too complicated There is a very real difference between groups a & b. The people who write .net understand this stuff, they handle it for you (for the most part). If you have any interest in your craft, it will be good to get to grips with this stuff. When the penny dropped for me (back when I was at uni) it was like a moment of zen enlightenment, it tied together several parts of disparate courses: it bridged the gap between chip design & assembler and the higher level stuff we'd been doing elswhere. Although I found it interesting for its own sake, I still find this stuff useful ten years on. It makes learning new langauages easier for one thing.

                          Sort of a cross between Lawrence of Arabia and Dilbert.[^]
                          -Or-
                          A Dead ringer for Kate Winslett[^]

                          M Offline
                          M Offline
                          Mike Hankey
                          wrote on last edited by
                          #28

                          Like learning to drive with a stick. If you can drive a stick you can drive anything!

                          Semper Fi http://www.hq4thmarinescomm.com[^]
                          www.jaxcoder.com[^] WinHeist

                          S 1 Reply Last reply
                          0
                          • J jpg 0

                            Saying this makes you feel better?

                            M Offline
                            M Offline
                            Mladen Jankovic
                            wrote on last edited by
                            #29

                            Yes... and your point is?

                            [Genetic Algorithm Library]

                            1 Reply Last reply
                            0
                            • C CPallini

                              You shouldn't reveal we C programmers are not friendly with intruders.

                              If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                              This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                              [My articles]

                              R Offline
                              R Offline
                              Rajesh R Subramanian
                              wrote on last edited by
                              #30

                              Just giving him a little heads up. :)

                              "Real men drive manual transmission" - Rajesh.

                              1 Reply Last reply
                              0
                              • J jpg 0

                                Mostly because of how pointers and references work, and also function definition seems very different. :((

                                A Offline
                                A Offline
                                AspDotNetDev
                                wrote on last edited by
                                #31

                                I recommend Data Structures and Algorithms Using C++ (Second Edition) (one is available in new condition for $25). Pages 3-4 and 15-30 cover pointers and reference variables very well (I was just reminiscing yesterday about my C++ days and read a few pages from this book :-O ).

                                [Managing Your JavaScript Library in ASP.NET]

                                1 Reply Last reply
                                0
                                • P Pete OHanlon

                                  CPallini wrote:

                                  In fact real programmers don't use strings at all

                                  Real programmers just use really thin ropes?

                                  Forgive your enemies - it messes with their heads

                                  My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                                  C Offline
                                  C Offline
                                  CPallini
                                  wrote on last edited by
                                  #32

                                  Nope: they use topological defects of the Universe.

                                  If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                                  This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                                  [My articles]

                                  1 Reply Last reply
                                  0
                                  • C CPallini

                                    bob16972 wrote:

                                    and instead ended up trying to "fix" what was wrong with copy Java.

                                    FFY.

                                    If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                                    This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                                    [My articles]

                                    B Offline
                                    B Offline
                                    bob16972
                                    wrote on last edited by
                                    #33

                                    Oops. my mistake. ;P

                                    1 Reply Last reply
                                    0
                                    • C CPallini

                                      Trollslayer wrote:

                                      Python

                                      we're talking about programming languages, aren't we? :rolleyes:

                                      If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                                      This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                                      [My articles]

                                      L Offline
                                      L Offline
                                      Lost User
                                      wrote on last edited by
                                      #34

                                      It was that or Perl. :((

                                      Join the cool kids - Come fold with us[^] "Program as if the technical support department is full of serial killers and they know your home address" - Ray Cassick Jr., RIP

                                      1 Reply Last reply
                                      0
                                      • P Pete OHanlon

                                        Trollslayer wrote:

                                        I've just moved to Python

                                        *Danger* Euphemism alert *Danger*

                                        Forgive your enemies - it messes with their heads

                                        My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                                        L Offline
                                        L Offline
                                        Lost User
                                        wrote on last edited by
                                        #35

                                        You were a scripter writer on 'Allo 'Allo then.

                                        Join the cool kids - Come fold with us[^] "Program as if the technical support department is full of serial killers and they know your home address" - Ray Cassick Jr., RIP

                                        1 Reply Last reply
                                        0
                                        • J jpg 0

                                          Mostly because of how pointers and references work, and also function definition seems very different. :((

                                          P Offline
                                          P Offline
                                          peterchen
                                          wrote on last edited by
                                          #36

                                          And you haven't even scratched the surface... The frustration will last for another five years aftetr which, if you make it through, you might get addicted.

                                          FILETIME to time_t
                                          | FoldWithUs! | sighist | WhoIncludes - Analyzing C++ include file hierarchy

                                          A L 2 Replies 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