Project

General

Profile

Cpplanguage » History » Revision 4

Revision 3 (Nicolas Aunai, 27/08/2016 05:09 PM) → Revision 4/6 (Alexis Jeandet, 29/08/2016 10:42 PM)

# Programming with C++ 


 ## Books 

 Here are some references on C++: 

 * [The C++ Programming language, Fourth edition, Bjarne Stroustrup](http://www.stroustrup.com/4th.html) is C++11/14 is the exhaustive bible/reference from [B. Stroutrup](http://stroustrup.com), the inventor of C++ 
 * [Programming Principles and Practice Using C++ 2nd edition](http://www.amazon.com/Programming-Principles-Practice-Using-Edition/dp/0321992784) (C++11/14) is a book for new comers to C++, from basics to more advanced topics it has nice explanations and comes with exercices ([solutions here](https://github.com/bewuethr/stroustrup_ppp) 
 * [A tour of C++](http://stroustrup.com/Tour.html) Pocket version presenting modern C++ by    [B. Stroutrup](http://stroustrup.com). 
 * [Effective C++: 55 Specific Ways to Improve Your Programs and Designs ](https://www.amazon.fr/Effective-Specific-Improve-Programs-Designs/dp/0321334876) Nice book written by [Scott Meyers](http://scottmeyers.blogspot.fr). Is pre-C++11 but still very useful. 
 * [Effective Modern C++ 42    ways to improve    Your Use of C++11 and C++14](https://www.amazon.com/Effective-Modern-Specific-Ways-Improve/dp/1491903996), from [Scott Meyers](http://scottmeyers.blogspot.fr), highly recommended to understand the new way of developing after C++11. Is for intermediate to advanced C++ programmers. 
 * [Scientific and Engineering C++: An Introduction with Advanced Techniques and Examples](https://www.amazon.fr/Scientific-Engineering-Introduction-Advanced-Techniques/dp/0201533936) Pre-C++11, very good to learn C++ (for C and Fortran programmers) and presents design techniques. 


 ## Videos 

 * [Modern C++](https://www.youtube.com/watch?v=TJHgp1ugKGM) 
 * [Effective C++11/14](https://www.youtube.com/watch?v=IqVZG6jWXvs) Nice video from Scott Meyers (authors of the book effective C++11/14). very good explanation of std::move/std::forward 
 * * [Programming using C++ : Video Tutorials](http://www.tutorialspoint.com/video_tutorials/programming_using_cplusplus/PCP-T) 


 ## FAQ 

 [C++ FAQ](https://isocpp.org/faq) 
 [Don’t be Afraid of Returning by Value, Know the Return Value Optimization](https://blog.knatten.org/2011/08/26/dont-be-afraid-of-returning-by-value-know-the-return-value-optimization/) 
 [Copy elision](http://en.cppreference.com/w/cpp/language/copy_elision) 

 


 ### Smart pointers 

 * [When should I use raw pointers over smart pointers?](http://stackoverflow.com/questions/6675651/when-should-i-use-raw-pointers-over-smart-pointers) 
 * [Which kind of pointer do I use and when?](http://stackoverflow.com/questions/8706192/which-kind-of-pointer-do-i-use-when)