- General
- Preprocessor
- Classes
- Memory Management
- Operator
- Exception Handling
- Structure
- Casting
- Callback
- Template
- Polymorphism
- Design Pattern
- Profiling
- Random Number
- String
General
- What are good books about C++?
- How do I convert between big-endian and little-endian values?
- What do 'ntohl()' and 'htonl()' actually do?
- How to declare and use two-dimensional arrays?
- What are different number representations?
- How is floating point representated?
- How to deal with references?
- What are the principles of Object-Oriented Design?
- What are the differences between inline functions and macros?
- What is the 'this' pointer?
- What are different methods to pass parameters to functions?
- What are C++ Headers?
- How to minimise mutual dependencies?
- What are different methods to access identifiers from a namespace?
Preprocessor
- How to avoid problems with include files?
- What are '__FILE__' and '__LINE__'?
- What is the purpose of include guards?
Classes
- What is the initialization list and why should I use it?
- What members of a class are implicitly defined?
- What are the differences between classes and structs?
- Does implicitly-defined copy constructor bitwise copy?
- Which are the differences between 'struct' and 'class'?
Memory Management
- What is the difference between 'delete' and 'delete[]'?
- How to release memory for an array of pointers?
- Why does deleting a pointer cause my program to crash?
- Why does declaring an array cause my program to crash?
- What is the difference between 'const char*' and 'char*const'?
- What are the differences between constant objects?
- What is the purpose of a constant reference?
- What is the difference between malloc/free and new/delete?
Operator
- How to overload postfix increment and decrement operators?
- Why should I use '++i' instead of 'i++'?
- How to deal with operator overloading?
Exception Handling
Structure
- How do I write a structure to a file?
- Why returns 'sizeof()' a bigger size than the members actually need?
Casting
Callback
Template
Polymorphism
Design Pattern
Profiling
- How do I determine the speed of a particular function or operation?
- Which is faster: <...> or [...]?
- How can I optimize my code?
Random Number
- Why does my random number generator always return the same set?
- What are good random number generators?
String
- What types of strings are there?
- What is the difference between '\n' and '\r\n'?
- How to use 'CString' in non-MFC applications?
- How to assign or compare strings?
- What is the difference between 'CString' and 'std::string'?
- How to convert between 'CString' and 'std::string'?
- How to convert a numeric type to a string?
- How to convert a string into a numeric type?