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 3 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.
  • J jpg 0

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

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

    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 1 Reply Last reply
    0
    • _ _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[^]

                            Mike HankeyM Offline
                            Mike HankeyM 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
                                          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