C++ links: Learning and teaching
Note: see also Communities -- where you can learn together.
- C++ Core Guidelines
- C++ Patterns: A repository of modern C++ patterns curated by the community
- C++ Tips of the Week: https://abseil.io/tips/
- Collaborative Collection of C++ Best Practices - https://github.com/lefticus/cppbestpractices
- Get Started! - https://isocpp.org/get-started
- Herb Sutter's Guru of the Week (GotW) series: https://herbsutter.com/gotw/
- Learning C++ - Simon Brand - https://blog.tartanllama.xyz/learning-cpp/
- List of Engineers Willing to Mentor You - http://stephaniehurlburt.com/blog/2016/11/14/list-of-engineers-willing-to-mentor-you
- Steve Dewhurst: C++ Once, Weakly... - http://www.stevedewhurst.com/once_weakly.html
- Teaching C - https://blog.regehr.org/archives/1393
- The Definitive C++ Book Guide and List - https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
- Bjarne Stroustrup's FAQ - http://www.stroustrup.com/bs_faq.html
- Bjarne Stroustrup's C++ Style and Technique FAQ - http://www.stroustrup.com/bs_faq2.html
- C++ FAQ - https://isocpp.org/faq
- Learning C++ - https://isocpp.org/wiki/faq/how-to-learn-cpp
- C++11 - the new ISO C++ standard - http://www.stroustrup.com/C++11FAQ.html
- comp.lang.c Frequently Asked Questions - http://www.c-faq.com/
- LearnProgramming C++ FAQ - https://www.reddit.com/r/learnprogramming/wiki/faq_cpp
- A Conversation about Teaching Software Engineering - https://blog.regehr.org/archives/1569
- Beginning with C++ - Jens Weller - https://www.youtube.com/watch?v=9WHRfU7U9lk
- C++: A General Purpose Language and Library - Kate Gregory and James McNellis - a free introductory C++ course on Microsoft Virtual Academy
- CppCon 2015: Kate Gregory “Stop Teaching C" - https://www.youtube.com/watch?v=YnWhqhNdYyk
- CppCon 2017: Bjarne Stroustrup “Learning and Teaching Modern C++” - https://www.youtube.com/watch?v=fX2W3nNjJIo
- Learning and teaching modern C++ - Arne Mertz - Meeting C++ 2016 - https://www.youtube.com/watch?v=N5wOrhL4ew8
- Stop Teaching C (When Teaching C++) - CppCast with Kate Gregory - Oct 14th, 2015 - http://cppcast.com/2015/10/kate-gregory/
- C9 Lectures: Stephan T. Lavavej
- Standard Template Library (STL) - https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Standard-Template-Library-STL-
- Advanced STL - https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Advanced-STL
- Core C++ - https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-
- C++ Programming Videos - Bo Qian - http://boqian.weebly.com/c-programming.html
- C++ Weekly - Jason Turner - https://www.youtube.com/user/lefticus1/playlists
- Everything Cpp - https://www.youtube.com/channel/UCxwGBrWeIIWO9V_uLwRWCdA/playlists
- Programming in C++ (Slides and Videos) - Michael Adams - https://www.ece.uvic.ca/~frodo/cppbook/
Note: Some of the following are primarily for entertainment purposes; while providing useful guidance for self-study (and possibly self-amusement), using these for evaluation in a formal setting would likely be a terrible idea :-)
- CppQuiz - http://cppquiz.org/
- http://www.mycppquiz.com/
- C++ Pub Quiz ACCU 2012 - http://www.pvv.org/~oma/PubQuiz_ACCU_Apr2012.pdf
- C++ Pub Quiz ACCU 2013 - http://www.pvv.org/~oma/PubQuiz_ACCU_Apr2013.pdf
- C++ Pub Quiz ACCU 2014 - http://www.pvv.org/~oma/PubQuiz_ACCU_Apr2014.pdf
- C++ Pub Quiz ACCU 2016 - http://www.pvv.org/~oma/PubQuiz_ACCU_Apr2016.pdf
- Deep C (and C++) - https://www.slideshare.net/olvemaudal/deep-c
- Google's C++ Class - https://developers.google.com/edu/c++/quiz
- Insecure coding in C (and C++) - https://www.slideshare.net/olvemaudal/insecure-coding-in-c-and-c
- Online C++ tests - http://www.interqiew.com/tests?type=cpp - http://www.interqiew.com/tests?type=dp
Articles and papers (focused on teaching, but also of interest for learning by self-studying)
- Koenig, A. & Moo, B. (2005) Learning & Teaching C++ Programming, http://www.drdobbs.com/learning-teaching-c-programming/184401918, C/C++ Users Journal February, 2005.
- Koenig, A. (2012) on "C++ Primer 5th Edition":
- Part 1: How To Revise a Textbook, http://www.drdobbs.com/cpp/c-primer-5th-edition-part-1-how-to-revis/240003977, Dr. Dobb's, July 19, 2012.
- Part 2: How Language Revisions Change Strategy, http://www.drdobbs.com/cpp/c-primer-5th-edition-part-2-how-language/240004388, Dr. Dobb's, July 25, 2012.
- Part 3: Smart Pointers Make It Harder To Teach How To Write Copy Constructors, http://www.drdobbs.com/cpp/c-primer-5th-edition-part-3-smart-pointe/240004805, Dr. Dobb's, August 2, 2012.
- Part 4: What Makes a Good Example?, http://www.drdobbs.com/cpp/c-primer-5th-edition-part-4-what-makes-a/240005166, Dr. Dobb's, August 8, 2012.
- Part 5: Core Language Versus Library?, http://www.drdobbs.com/cpp/c-primer-5th-edition-part-5-core-languag/240005657, Dr. Dobb's, August 15, 2012
- Stroustrup, Bjarne (1999) Learning Standard C++ as a New Language; http://www.stroustrup.com/new_learning.pdf, C/C++ Users Journal, pp 43-54, May 1999.
- Stroustrup, Bjarne (2009) Programming in an undergraduate CS curriculum, http://www.stroustrup.com/software.pdf, WCCCE'09. May 2009.
- Stroustrup, Bjarne (2010) What Should We Teach New Software Developers? Why?, http://cacm.acm.org/magazines/2010/1/55760-what-should-we-teach-new-software-developers-why/fulltext, CACM, January 2010.
- Stroustrup, Bjarne (2011) Principles and Practice Using C++
- Chapter 0: Notes to the Reader, http://www.stroustrup.com/Programming/programming_ch0.pdf
- Instructor’s Guide for Programming Principles and Practice using C++, http://www.stroustrup.com/Programming/PPP-guide.pdf