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. General Programming
  3. C / C++ / MFC
  4. C++ Where to start?

C++ Where to start?

Scheduled Pinned Locked Moved C / C++ / MFC
csharpquestionc++javascript
16 Posts 6 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.
  • T toxcct

    the best book i've ever read on C++ is The C++ Language[^], written by the creator of the language, Bjarne Stroustrup. i found it so complete that i now have it at home...


    TOXCCT >>> GEII power
    [toxcct][VisualCalc] -- modified at 10:37 Wednesday 2nd November, 2005

    K Offline
    K Offline
    Kevin McFarlane
    wrote on last edited by
    #7

    I wouldn't recommend it for a C++ beginner though. It's more useful once you've had some experience with C++. Kevin

    T D 2 Replies Last reply
    0
    • L Leather99

      Hi All, Sorry to post such an open ended question, but does anyone have an opinion on the best way for an experienced developer to learn C++? I have worked with VB6(Don't tell me - a toy language! ;P) and C# for some time now and I would consider myself to be pretty competent with both of these and SQL. I have also done a considerable amount of Web Development using ASP/ASP.NET and Javascript. Recently I did some reading on C++ and decided I would like to learn this too, however I am unsure where to start. A lot of the articles I have found start at a very low level - understandably aimed at novice developers. Does anyone have any suggestions/links/books that they would recomend for someone in my position? Thanks. MCSD(VB6/SQL7) MCAD(C#/SQL2000) MCSD(C#/SQL2000)

      K Offline
      K Offline
      Kevin McFarlane
      wrote on last edited by
      #8

      This looks quite good. http://cplus.about.com/od/beginnerctutorial/l/blcplustut.htm[^] Kevin

      L 1 Reply Last reply
      0
      • K Kevin McFarlane

        I wouldn't recommend it for a C++ beginner though. It's more useful once you've had some experience with C++. Kevin

        T Offline
        T Offline
        toxcct
        wrote on last edited by
        #9

        2 things : -Mr Leather99 don't seem to be a beginner... he - himself - qualify as an experienced developer -I learnt C++ reading this book !!! i had no OO basics, few C ones...


        TOXCCT >>> GEII power
        [toxcct][VisualCalc]

        K 1 Reply Last reply
        0
        • B Bob Stanneveld

          Hello, What you need to reed depends on what you want to do. If you want to write windows programs, you can study MFC or WIN32. I don't recommand WIN32 since MS is moving to another platform. When you want to learn how the standard library works, you should read 'The C++ programming language' by Bjarne Stroustrup. This book was already suggested. My suggestion is that you start to build small C++ programs in C++. Design them well first and read about each topic you come across. If you need some data structure for example, read about vectors, maps, lists, etc.. So for your first toy app, you almost read an entire bookm but you'll read less and less each time. I found that this is an easy way to learn a new language if you are an experianced developer. One more tip, learn about the C++ memory model very fast. Since it is not managed like C#, you can easy leak tons of memory. This was one of the biggest pitfalls for developers who step down to C++ from a managed language. Hope this helps. :-D Behind every great black man...             ... is the police. - Conspiracy brother Blog[^]

          L Offline
          L Offline
          Leather99
          wrote on last edited by
          #10

          Thanks for that Bob... Yes Memory allocation etc is something i have generally been able to avoid using VB and .NET. I will keep it in mind.


          MCSD(VB6/SQL7) MCAD(C#/SQL2000) MCSD(C#/SQL2000)

          K 1 Reply Last reply
          0
          • K Kevin McFarlane

            This looks quite good. http://cplus.about.com/od/beginnerctutorial/l/blcplustut.htm[^] Kevin

            L Offline
            L Offline
            Leather99
            wrote on last edited by
            #11

            I will work my way through those. Thanks Kevin - and to everyone else who responded.


            MCSD(VB6/SQL7) MCAD(C#/SQL2000) MCSD(C#/SQL2000)

            1 Reply Last reply
            0
            • L Lost User

              I assume that you have basic understandings in the area of OOP. If so then I really recommend you this book : Teach Yourself C++ by Herb Schildt - 3rd Edition


              "Success is the ability to go from one failure to another with no loss of enthusiasm." - W.Churchill

              D Offline
              D Offline
              David Crow
              wrote on last edited by
              #12

              I remember reading one of his Turco C books back in the early 90s. That, coupled with Petzold's Windows book, did wonders for me.


              "Take only what you need and leave the land as you found it." - Native American Proverb

              1 Reply Last reply
              0
              • K Kevin McFarlane

                I wouldn't recommend it for a C++ beginner though. It's more useful once you've had some experience with C++. Kevin

                D Offline
                D Offline
                David Crow
                wrote on last edited by
                #13

                Odd that you would recommend learning C++ from someone other than its author.


                "Take only what you need and leave the land as you found it." - Native American Proverb

                K 1 Reply Last reply
                0
                • T toxcct

                  2 things : -Mr Leather99 don't seem to be a beginner... he - himself - qualify as an experienced developer -I learnt C++ reading this book !!! i had no OO basics, few C ones...


                  TOXCCT >>> GEII power
                  [toxcct][VisualCalc]

                  K Offline
                  K Offline
                  Kevin McFarlane
                  wrote on last edited by
                  #14

                  toxcct wrote:

                  Mr Leather99 don't seem to be a beginner.

                  He's a C++ beginner though. Even after having done C++ for quite some time I found Stroustrup's book heavy going. I also found it more useful as a reference rather than as a first book. I actually learnt C++ mainly from Bryan Flamig's (now very ancient and probably out-of-print) Turbo C++ Step by Step. I still occasionally refer to it though. Kevin

                  1 Reply Last reply
                  0
                  • D David Crow

                    Odd that you would recommend learning C++ from someone other than its author.


                    "Take only what you need and leave the land as you found it." - Native American Proverb

                    K Offline
                    K Offline
                    Kevin McFarlane
                    wrote on last edited by
                    #15

                    Not at all. Because someone created a technology it doesn't follow that they are the best ones to explain its ideas. Kevin

                    1 Reply Last reply
                    0
                    • L Leather99

                      Thanks for that Bob... Yes Memory allocation etc is something i have generally been able to avoid using VB and .NET. I will keep it in mind.


                      MCSD(VB6/SQL7) MCAD(C#/SQL2000) MCSD(C#/SQL2000)

                      K Offline
                      K Offline
                      Kevin McFarlane
                      wrote on last edited by
                      #16

                      A common error for C# or Java programmers moving to C++ is the tendency to use heap allocation (new) everywhere. But the general strategy for C++ is to 1. Use dynamic allocation only when its necessary. 2. Prefer using library data structures, e.g., std::vector, std::list, to rolling your own. 3. If you must use dynamic allocation, use a smart pointer class, e.g., auto_ptr or boost::shared_ptr Kevin

                      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