CPlusPlus
From Lost In Wonderlands
Contents
- 1 C++ programming Language
- 1.1 See also
- 1.2 C++
- 1.2.1 C++ Topics
- 1.2.1.1 Cpp Acronisms
- 1.2.1.2 Fluent Cpp Topics
- 1.2.1.3 auto
- 1.2.1.4 Ranges
- 1.2.1.5 SmartPointers
- 1.2.1.6 RAII, Resource Acquisition is initialization Pattern
- 1.2.1.7 Perfect Forwarding C++ Patterns
- 1.2.1.8 Swap Values C++ Pattern
- 1.2.1.9 more C++ Patterns
- 1.2.1.10 Exceptions
- 1.2.1.11 curried Objects
- 1.2.1.12 C++ templates
- 1.2.1.13 C++ traits
- 1.2.1.14 C++ type Casting
- 1.2.1.15 Learning STL
- 1.2.1.16 Ranges in C++ and STL
- 1.2.1.17 Maker functions in STL
- 1.2.1.18 More C++ Idoms
- 1.2.2 Boost
- 1.2.3 C++ API Design
- 1.2.4 C++ Evolutions
- 1.2.5 C++ Coding Styles
- 1.2.5.1 Iso C++ Coding Style
- 1.2.5.2 https://github.com/isocpp/CppCoreGuidelines Iso C++ Coding Style on Github ]
- 1.2.5.3 C++ Coding Style on Github
- 1.2.5.4 coding-standards
- 1.2.5.5 c++ coding styles by Bjarne and Herb
- 1.2.5.6 Mozilla C++ Coding Style
- 1.2.5.7 Google C++ Coding style
- 1.2.5.8 high-integrity-cpp-coding-standard
- 1.2.6 C++ Portability
- 1.2.7 C++ Testing
- 1.2.1 C++ Topics
- 1.3 Improving your C++
- 1.4 FAQ
- 1.5 Tools
- 1.6 Articles
- 1.7 blogs
- 1.8 Libraries
- 1.9 source code
- 1.10 tutorials
- 1.11 Books
C++ programming Language
See also
C++
- http://www.cplusplus.com/
- https://en.wikipedia.org/wiki/C%2B%2B
- http://www.open-std.org/jtc1/sc22/wg21/
- https://isocpp.org/get-started
- C and C++ compatibility, https://en.wikipedia.org/wiki/Compatibility_of_C_and_C%2B%2B
C++ Builder
C++ Standard Library
C++ Topics
Cpp Acronisms
Fluent Cpp Topics
auto
Ranges
SmartPointers
- auto_ptr, deprecated since c++11, it was replaced by unique ptr
- smart-pointers-modern-cpp
- boost smart pointers
RAII, Resource Acquisition is initialization Pattern
Perfect Forwarding C++ Patterns
Swap Values C++ Pattern
more C++ Patterns
Exceptions
- multiple-error-handling-with-the-optional-monad-in-c
- Why doesn't C++ provide a "finally" construct?
- cppreferences
- https://en.cppreference.com/w/cpp/language/exceptions
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-1
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-2
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-3
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-4
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-5
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-6
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-7
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-8
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-9
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-10
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-11
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-12
- https://en.cppreference.com/w/cpp/language/exceptions#cite_ref-13
- isocpp.org
- boost
- stdlib
- DrDobb's
- microsoft
- welcome-back-to-cpp-modern-cpp
- try-throw-and-catch-statements-cpp
- errors-and-exception-handling-modern-cp?
- how-to-design-for-exception-safety
- thread-safety-in-the-cpp-standard-library
- exceptions-and-stack-unwinding-in-cpp
- how-to-interface-between-exceptional-and-non-exceptional-code
- lambda-expressions-in-cpp
- exception-class
- stdexcept
- cpp-language-reference
- cpp-standard-library-reference
curried Objects
C++ templates
C++ traits
C++ type Casting
- https://en.wikipedia.org/wiki/Type_conversion
- https://en.wikipedia.org/wiki/Static_cast
- https://en.wikipedia.org/wiki/Type_punning
- https://fr.wikipedia.org/wiki/Dynamic_cast
- https://openclassrooms.com/courses/c-les-conversions-de-types
- https://stackoverflow.com/questions/28002/regular-cast-vs-static-cast-vs-dynamic-cast
Qt Type Casting
Learning STL
Ranges in C++ and STL
- [https://www.fluentcpp.com/2018/04/13/moving-ranges-stl/ moving-ranges-stl}
- the-difference-between-stdcopy_backward-and-stdcopy-with-reverse-iterators
- inserting-several-elements-into-an-stl-container
- how-to-split-a-string-in-c
Maker functions in STL
- make_ functiona re facility stl foos
- https://docs.microsoft.com/en-us/cpp/standard-library/memory-functions?view=vs-2019#make_unique
- make_unique
- make_shared
More C++ Idoms
- https://en.wikibooks.org/wiki/More_C++_Idioms
- https://herbsutter.com/elements-of-modern-c-style/
- https://cpptruths.blogspot.com/2007/08/new-book-on-c-idioms.html
Boost
C++ API Design
Qt API Design
C++ Evolutions
Support in compilers
Static code analyzer tools
- integrated in Visual Studio C++
- clang power tools for visual studio
- Clang in xCode
- http://cppcheck.net/
ISOCPP
C++ 03
C++ 11
C++ 14
C++ 17
- https://en.wikipedia.org/wiki/C%2B%2B17
- [ https://www.cppindetail.com c++ in details]
C++ 20
C++ Coding Styles
Iso C++ Coding Style
https://github.com/isocpp/CppCoreGuidelines Iso C++ Coding Style on Github ]
C++ Coding Style on Github
coding-standards
c++ coding styles by Bjarne and Herb
Mozilla C++ Coding Style
Google C++ Coding style
high-integrity-cpp-coding-standard
C++ Portability
Using_CXX_in_Mozilla_code
C++ Testing
- https://en.wikipedia.org/wiki/CppUnit
- https://sourceforge.net/projects/cppunit/
- https://freedesktop.org/wiki/Software/cppunit/
- https://freedesktop.org/wiki/Software/cppunit/
Improving your C++
- https://www.acodersjourney.com/top-10-c-header-file-mistakes-and-how-to-fix-them/
- https://www.acodersjourney.com/6-tips-supercharge-cpp-11-vector-performance/
https://www.acodersjourney.com/boost-c11-vector-performance/
- https://www.acodersjourney.com/c-11-auto/
- https://www.acodersjourney.com/top-10-dumb-mistakes-avoid-c-11-smart-pointers/
- https://www.acodersjourney.com/top-15-c-exception-handling-mistakes-avoid/
- https://www.acodersjourney.com/top-20-c-pointer-mistakes/
- https://www.acodersjourney.com/top-20-cplusplus-multithreading-mistakes/
- https://www.acodersjourney.com/insertion-sort/
- https://www.acodersjourney.com/top-25-cplusplus-api-design-mistakes-and-how-to-avoid-them/
FAQ
Tools
Others
- C Reduce
compilers
IDE
- https://www.jetbrains.com/cpp/?gclid=CJblnPaN0dQCFcEp0wod50IDwA&gclsrc=aw.ds.ds&dclid=CIr4_faN0dQCFZc-GwodAhYCWg
- http://www.codeblocks.org
- https://www.kdevelop.org
- https://www.monodevelop.com
- https://visualstudio.microsoft.com/fr/
- https://developer.apple.com/xcode/
on line compilers
- C++ Shell, http://www.cpp.sh
- Compiler explorer, https://godbolt.org/z/e_Wfrd
Articles
blogs
- isocpp
- cplusplus.com
- cppReferences
- a coders journey
- geeks for geeks
- codescracker
- [ http://www.cppforschool.com/projects.html cpp for school]
- Meeting C++, a news site on C++ , new specifications
- cpp optimizing with static analysis tools
- C++, Qt, OpenGL, CUDA
- cppcast john-regehr
- Simplify C++
- comp.lang.c++
- cpp_questions
- Vorbrodt's C++ Blog
- Scott Meyer blog
- 11 free resources for learning c++ programming
- philippegroarke solutions
- accu.org
- solarian programmers' blog
Libraries
source code
Gang Of Four Patterns
Several implementation of Above design patterns in C++
- https://github.com/BartVandewoestyne/Design-Patterns-GoF
- https://github.com/zebmason/GoFRefactored/blob/master/README.md
- http://www.informit.com/articles/article.aspx?p=1404056
- https://www.infoq.com/presentations/gof-patterns-c-plus-plus-boost/
- http://www.c-jump.com/CIS75/Week11/
- http://www.c-jump.com/Download/Patterns/Prototype/html/
- https://github.com/wangqiang8511/C---Design-Patterns-Examples/
- https://cpppatterns.com/
modern C++
- github search, https://github.com/search?q=modern+c%2B%2B
- JSON, https://github.com/nlohmann/json/releases/tag/v3.6.0
tutorials
- http://www.tutswing.com/cplusplus-home
- http://www.dreamincode.net/forums/forum/48-c-tutorials/
- https://cplusplus.awesome-programming.com/en/awesome/cplusplus-04/tutorial
- http://www.cppforschool.com/projects.html
- https://www.programiz.com/cpp-programming/examples
awesome-programming.com
- https://cplusplus.awesome-programming.com/en/awesome/cplusplus-03/course
- https://cplusplus.awesome-programming.com/en/awesome/cplusplus-04/tutorial
- https://cplusplus.awesome-programming.com/en/awesome/cplusplus-02/community
- https://cplusplus.awesome-programming.com/en/awesome/cplusplus-05/youtube
Books
- Professional C++, Marc Gregroire, 4ieme Edition
- C++17 Quick Syntax Reference, Mikael Olsson, APress
- C++17 Standard Library Quick Reference, , Peter Van Weert, Marc Gregroire, Apress
- Safe c++
- Optimized C++
- Clean c++
- C++ High Performance: Boost and optimize the performance of your C++17 code, Viktor Sehr, Bjorn Andrist, Packt
- beginning c++17-5th-edition
- Effective Modern C++
- Effective C++
- More Effective c++
- Effective Modern C++
- effective_cpp_in_an_embedded_environment
- Exceptional C++
- More Exceptional C++
- Modern C++
- Exploring c++11
- c++ crash course (no starch press)
- c++ concurrency in action-2nd-edition
- modern c programming with test driven development
- exploring c++
- options-and-derivatives-programming-in-c++