![]() |
| | #1 |
| NotSoAvgProgrammer Join Date: Jul 2007 Location: Virginia, U.S.
Posts: 57
| How far in detail should I go? I can make a vector, get items in it, etc. But I don't understand how it works, should I spend some time into learning this? Thanks, Joe |
| avgprogamerjoe is offline | |
| | #2 |
| Super Moderator Join Date: Aug 2001
Posts: 7,817
| Moved to GD since there isn't an obvious question about C++. |
| Bubba is offline | |
| | #3 | |
| C++ Witch Join Date: Oct 2003 Location: Singapore
Posts: 11,356
| Quote:
__________________ C + C++ Compiler: MinGW port of GCC Build + Version Control System: SCons + Bazaar Look up a C/C++ Reference and learn How To Ask Questions The Smart Way | |
| laserlight is online now | |
| | #4 |
| Registered User Join Date: Jul 2006
Posts: 162
| learn about how information is fundamentally formatted and manipulated. e.g. study digital principles, and logic, i even went in to component design... it's not necessary, but it's interesting. also assembly, and read in to turing machines and other abstract computing devices. you can go through the above thoroughly in a month, small sacrifice to move a head a lot. assembly might a lot of practice, but understanding the concepts may suffice. from there everything in c++ will have more light shown on to it, and the concepts will translate in your mind more comprehensibly. OOP after all is a high level approach to translating information from and to various formats. that's all programming and systems are, information manipulating concepts. training your mind for the approach is fundamentally important, you're mind as an adaptive network needs to approach problems in a pattern-matching oriented fashion to succeed to the highest degree. you exploit your nature by "prepping" your mind with the proper abilities to learn and memorize future concepts in any field. so study all the appropriate background information, not just the language on its own. that is, of course, just my opinion. Last edited by simpleid; 08-22-2007 at 09:11 AM. |
| simpleid is offline | |
| | #5 |
| Registered User Join Date: Jan 2005
Posts: 7,252
| >> should I be concentrating on understanding how vectors work No. >> should I just know what they can do when I punch in the text Yes. >> worry about the how later Yes. >> But I don't understand how it works, should I spend some time into learning this? You should spend just a tiny bit of time getting a quick overview of how they work that is enough to satisfy some of your curiousity, but you should save learning how they work in detail until you've had time to learn the other basics that are required for that understanding. Most beginning programmers don't need much more than a simple overview of how ints work, or how functions work, or how compiling works. A vector is just like any of those tools. If you do want to understand how all those tools work in detail, then you wouldn't be learning C++ right now, you'd be studying other topics. |
| Daved is offline | |
| | #6 |
| Kernel hacker Join Date: Jul 2007 Location: Farncombe, Surrey, England
Posts: 15,686
| Even after 20 years as a programmer/software engineer, there are many details of "what happens inside this black box", I don't know. I have a rudimentary understanding of many of the black boxes that exist in libraries and operating systems, but as far as knowing how exactly it works, is pretty meaningless - unless you need to either write the functionality for some reason, or you have to fix a bug in one of those functions. It's also a bit like peeling an onion, once you've remove one layer, you find that it's just the same again (more stuff you don't understand) - if you figure out how vector storage works, you'll find that you don't know how the fundamentals that it uses works. Software is built in layers (somewhat like an onion) - you need to understand what "your" layer does precisely and the layer above/below you need to understand the basics of, but it's almost impossible for most ordinary humans to understand all the layers from the user application (say a web-browser or calculator application), the libraries used by the application, graphical user interface libraries and all the way down through to the drivers inside the OS. Yes, you can have a good idea of how it works, but knowing all teh details of how ALL of it works is beyond most of us - and when I say most, I mean that we should probably exclude Linus Torvalds, Alan Cox, Dave Cutler and some other OS architects that obviously will have to know pretty much everything about the OS they have architected (although I'm almost certain that either of those actually KNOW every single part of the OS, but they know enough to quickly find out any part they need). -- Mats |
| matsp is offline | |
| | #7 | |
| Registered User Join Date: Jul 2006
Posts: 162
| Quote:
| |
| simpleid is offline | |
![]() |
| Thread Tools | |
| Display Modes | |
|
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Detail about How VPTR and Virtual table works | asadullah | C++ Programming | 3 | 03-10-2008 12:42 PM |
| get keyboard and mouse events | ratte | Linux Programming | 10 | 11-17-2007 05:42 PM |
| Compilation steps in detail? | hardi | C++ Programming | 18 | 12-09-2006 12:21 PM |
| Linked Lists in Detail | SlyMaelstrom | C++ Programming | 1 | 11-10-2005 01:08 PM |