Project

General

Profile

Cpplanguage » History » Version 6

Alexis Jeandet, 29/08/2016 10:46 PM

1 2 Nicolas Aunai
# Programming with C++
2 1 Nicolas Aunai
3
## Books
4
5
Here are some references on C++:
6
7
* [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++
8 5 Alexis Jeandet
* [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))
9 3 Nicolas Aunai
* [A tour of C++](http://stroustrup.com/Tour.html) Pocket version presenting modern C++ by  [B. Stroutrup](http://stroustrup.com).
10 1 Nicolas Aunai
* [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.
11
* [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.
12
* [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.
13
14
## Videos
15
16
* [Modern C++](https://www.youtube.com/watch?v=TJHgp1ugKGM)
17
* [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
18 6 Alexis Jeandet
* [Programming using C++ : Video Tutorials](http://www.tutorialspoint.com/video_tutorials/programming_using_cplusplus/PCP-T)
19 1 Nicolas Aunai
20
## FAQ
21
22 4 Alexis Jeandet
[C++ FAQ](https://isocpp.org/faq)
23
[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/)
24
[Copy elision](http://en.cppreference.com/w/cpp/language/copy_elision)
25 1 Nicolas Aunai
26
### Smart pointers
27
28
* [When should I use raw pointers over smart pointers?](http://stackoverflow.com/questions/6675651/when-should-i-use-raw-pointers-over-smart-pointers)
29
* [Which kind of pointer do I use and when?](http://stackoverflow.com/questions/8706192/which-kind-of-pointer-do-i-use-when)