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. Why I hate C++

Why I hate C++

Scheduled Pinned Locked Moved The Lounge
c++question
60 Posts 23 Posters 0 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.
  • D den2k88

    It's not C++, it's the programmers. I use C++ and don't do that s**t.

    GCS d-- s-/++ a- C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- ++>+++ y+++*      Weapons extension: ma- k++ F+2 X

    B Offline
    B Offline
    Bob1000
    wrote on last edited by
    #46

    You are pretty close to the perfect answer.... C++ is as sensible or as stupid and daft as you want it to be. Unfortunately not helped by the C++ ISO bods adding more and more different ways to make it more complicated without adding very much to real C++ users. The idea of less is more is lost on them. Could do with minimum C++ with a lot of the bad and new stuff removed. As for the Template library - great functionality but let down by the ludicrous syntax etc.

    C 1 Reply Last reply
    0
    • G Gary Wheeler

      Member 7989122 wrote:

      Mechanical Engineering Department and eager FORTRAN coder

      Found your problem.

      Software Zen: delete this;

      M Offline
      M Offline
      MKJCP
      wrote on last edited by
      #47

      But without those type of people we would never have put a man on the moon. Remember, it takes people with real jobs to get real things done.

      G 1 Reply Last reply
      0
      • M MKJCP

        But without those type of people we would never have put a man on the moon. Remember, it takes people with real jobs to get real things done.

        G Offline
        G Offline
        Gary Wheeler
        wrote on last edited by
        #48

        Margaret Hamilton (scientist) - Wikipedia[^]

        Software Zen: delete this;

        M 1 Reply Last reply
        0
        • G Gary Wheeler

          Margaret Hamilton (scientist) - Wikipedia[^]

          Software Zen: delete this;

          M Offline
          M Offline
          MKJCP
          wrote on last edited by
          #49

          Interesting bit of history, thanks.

          1 Reply Last reply
          0
          • M Munchies_Matt

            some_array[value];

            [] is over ridden and is commented as // find element matching _Keyval or insert with default mapped Which actually means 'insert it at the end of the list'. Why not a function called 'add_to_map_at_end'? Christ I hate C++ sometimes, it is so up its arse pointless at times.

            E Offline
            E Offline
            englebart
            wrote on last edited by
            #50

            Don't get frustated, create your own adpator so you can do something like: [static] map_adaptor::wrap(some_array_which_is_really_not_a_primitive_array).find_element_or_insert(value);

            1 Reply Last reply
            0
            • M Munchies_Matt

              some_array[value];

              [] is over ridden and is commented as // find element matching _Keyval or insert with default mapped Which actually means 'insert it at the end of the list'. Why not a function called 'add_to_map_at_end'? Christ I hate C++ sometimes, it is so up its arse pointless at times.

              A Offline
              A Offline
              Andy Hoffmeyer
              wrote on last edited by
              #51

              Don't blame the language or its standard library for your inability to RTFM. From std::map::operator[] - cppreference.com: operator[] is non-const because it inserts the key if it doesn't exist.

              M 1 Reply Last reply
              0
              • A Andy Hoffmeyer

                Don't blame the language or its standard library for your inability to RTFM. From std::map::operator[] - cppreference.com: operator[] is non-const because it inserts the key if it doesn't exist.

                M Offline
                M Offline
                Munchies_Matt
                wrote on last edited by
                #52

                No shit it inserts it, I just said that. RTFOT FFS.

                1 Reply Last reply
                0
                • M Munchies_Matt

                  some_array[value];

                  [] is over ridden and is commented as // find element matching _Keyval or insert with default mapped Which actually means 'insert it at the end of the list'. Why not a function called 'add_to_map_at_end'? Christ I hate C++ sometimes, it is so up its arse pointless at times.

                  S Offline
                  S Offline
                  Steve Naidamast
                  wrote on last edited by
                  #53

                  Why I don't hate the C++ language I have found it to be overly arcane with its syntax...

                  Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com

                  1 Reply Last reply
                  0
                  • M Munchies_Matt

                    I have come across some right howlers in this code base. Anyway, C++, of all the languages I have used, from ADA, to Prolog, through VB and Java, allows this kind of sillyness. So it is for that that I condemn it. And personally I dont see that OO is a massive benefit over a procedural language except in specific instances. And in fact it is often worse. Particularly in control code, code that is not data centric, but process centric.

                    S Offline
                    S Offline
                    SeattleC
                    wrote on last edited by
                    #54

                    If you had ever had the experience of building a large software project using non-OO code, you would sing a different tune.

                    M 1 Reply Last reply
                    0
                    • S SeattleC

                      If you had ever had the experience of building a large software project using non-OO code, you would sing a different tune.

                      M Offline
                      M Offline
                      Munchies_Matt
                      wrote on last edited by
                      #55

                      You can build a large project from procedural code just as well, it all depends on the architecture you design. Look at the WIndows kernel. All built in C (with a bit of assembler in the HAL)

                      S 1 Reply Last reply
                      0
                      • B Bob1000

                        You are pretty close to the perfect answer.... C++ is as sensible or as stupid and daft as you want it to be. Unfortunately not helped by the C++ ISO bods adding more and more different ways to make it more complicated without adding very much to real C++ users. The idea of less is more is lost on them. Could do with minimum C++ with a lot of the bad and new stuff removed. As for the Template library - great functionality but let down by the ludicrous syntax etc.

                        C Offline
                        C Offline
                        Carlosian
                        wrote on last edited by
                        #56

                        Yes, I still keep the AT&T C++ book on my desk. A slim volume describing a nice language which was an (IMO) elegant OO extension to 'C'. Now you can look at valid C++ syntax that looks like a cat walked across the keyboard. They seem to be trying to put every feature of every other language into C++ syntax and comprehensibility be damned.

                        1 Reply Last reply
                        0
                        • M Munchies_Matt

                          You can build a large project from procedural code just as well, it all depends on the architecture you design. Look at the WIndows kernel. All built in C (with a bit of assembler in the HAL)

                          S Offline
                          S Offline
                          SeattleC
                          wrote on last edited by
                          #57

                          And have you, personally, built a million-line code-base in purely procedural code? In C, perhaps? If you have done so, and have done the same using an object-oriented language, then you have standing to dismiss object oriented programming as no better than procedural. Merely asserting that it is possible is not a very strong claim. Pointing to 30-year-old code like the Windows Kernel, that was developed before the broad availability of OO languages is meaningless.

                          M 1 Reply Last reply
                          0
                          • S SeattleC

                            And have you, personally, built a million-line code-base in purely procedural code? In C, perhaps? If you have done so, and have done the same using an object-oriented language, then you have standing to dismiss object oriented programming as no better than procedural. Merely asserting that it is possible is not a very strong claim. Pointing to 30-year-old code like the Windows Kernel, that was developed before the broad availability of OO languages is meaningless.

                            M Offline
                            M Offline
                            Munchies_Matt
                            wrote on last edited by
                            #58

                            Ah, so because I havnt done it it isnt true. OK, gotcha! ;)

                            SeattleC++ wrote:

                            30-year-old code like the Windows Kernel,

                            :laugh: :laugh: :laugh: NT is old, 2000 was modified to include PnP and power handling. Windows 10 is even more recent.

                            1 Reply Last reply
                            0
                            • M Munchies_Matt

                              Here you go: vc-19-changes/unordered_map at master · icestudent/vc-19-changes · GitHub[^]

                              I Offline
                              I Offline
                              Ian Bell 2
                              wrote on last edited by
                              #59

                              Why reference the code and what is it you are requesting?

                              History is the joke the living play on the dead.

                              1 Reply Last reply
                              0
                              • M Munchies_Matt

                                Seems to be something like that. Anyway, reading my_array[value]; and that is it, is damn confusiing!

                                K Offline
                                K Offline
                                KBZX5000
                                wrote on last edited by
                                #60

                                I agree 100%

                                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