5 ms·
You may like to read and search the questions on stackoverflow. They have a lot of C++11 and C++14 questions and code examples and many of the contributors are
by w8rbt 12y ago
You may like to read and search the questions on stackoverflow. They have a lot of C++11 and C++14 questions and code examples and many of the contributors are very experienced with C++.
http://stackoverflow.com/tags/c%2b%2b11/info
http://stackoverflow.com/tags/c%2b%2b14/info
I use C++ almost daily. I love it. I've used it for many years now. Having said that, I try to avoid the newer standards unless I absolutely must use them.
Don't get me wrong. The new features are great. I love nullptr, fixed width integers, to_string, stol, etc. but I sometimes work in environments with very old compilers that don't offer these features. And when the only code you have is written for C++11 or newer, it can take a great deal of time and effort to make your code work on the older systems.
Also, if what you need is in the standard, then don't use any external libraries. There are a lot of great libraries out there (Boost, Crypto++, etc.), but they add complexity and build dependencies and can cause all sorts of support issues. If you add Boost only because you need to parse arguments, then you're really causing yourself and developers who come after you more trouble than it's worth. So every time you think you need an external library, think twice and talk it over with other, more experienced developers.
When I need more features than the older standard provides, I'll use a newer standard, but I strive to only use the exact features I need (don't go wild and convert your entire code to C++11). And as a very last resort, I'll use an external library (but only a mature, widely used one) when I cannot easily write what I need with std C++.
Hope this helps. And whatever you decide, I'm sure you'll enjoy working with C++.
- cgh 12y agoI too worked with C++ for years but I haven't for some time. I plan to learn the C++11 stuff and get back up to speed because I hate the feeling of falling behind in a language that really has no competition in the niche it fills. Here is a somewhat off-topic question for you: what is the job market like for C++? Is it mostly maintaining/enhancing legacy code or is there considerable new code being written in C++?
- w8rbt 12y agoIt's been just more than two years since I was paid to write software. I was a systems programmer. My knowledge is a bit dated. The C++ code I write today is to support IT security research (job) and my own personal interests (hobbies). When I worked in systems programming (automobile systems research), C++ was very popular in the embedded/systems space. I believe it still is. Many systems people I knew were porting C to C++. Old code was maintained and new code was written. I'd say the break-down was about 50 50. In addition to adding C++ features, maintaining C compatibility was paramount. I never worked with higher-level applications, but I'm sure that there's a lot of C++ up there too (web browsers, office suites, etc). Maybe even more.
- dreamer_ 12y agoI hate the feeling of falling behind in a language that really has no competition in the niche it fills. Well, that's no longer true - Rust and Go are two contenders for C++'s "niche". They are still growing, but are already much nicer languages than C++. In some situations Erlang or Ocaml can also replace C++ successfully.
- cgh 12y agoAs much as I like Rust, it is in its infancy and it will be years before it gains similar traction, if it ever does. The other languages you mentioned are not in the same category (garbage collection alone excludes them).