Clean Code: Best Practices for Modern C++

Introduction (Week 1)
Welcome and Overview (week 1)
Preparation
Further Information:
Clean Code (week 2)
Welcome and Overview (week 2)
Definition
Principles
SOLID
Further Information
C++ Core Guidelines (Week 3)
Welcome and Overview (week 3)
Singleton
7 Topics
Details
Example: singleton.cpp
Example: singletonMeyer.cpp
Exercise: discuss the pros and cons of the singleton pattern
Exercise: the monostate pattern as a singleton replacement
Exercise: dependency injection as a singleton replacement
Further Information
Guidelines
3 Topics
Guide: Avoid globals and singletons
Guide: Interfaces should be
Guide: Don’t pass arrays as single pointers
Further Information:
Functions (week 4)
Welcome and Overview (week 4)
constexpr
3 Topics
Example: constexpr14.cpp
Exercise: analyse MyDouble
Further Information
Guidelines
4 Topics
Guide: Functions should perform one operation
Guide: Make your functions constexpr if possible
Guide: Distinguish between in, in/out, and out parameter
Guide: Ownership semantics of function parameters
Further Information:
Class1 (week 5)
Welcome and Overview (week 5)
Regular Type
2 Topics
Details
Further Information
Value Object
3 Topics
Details
Exercise: create the value object Money
Further Information
Guidelines
1 of 4
Previous Topic
Next Topic

Exercise: the monostate pattern as a singleton replacement

Clean Code: Best Practices for Modern C++ Singleton Exercise: the monostate pattern as a singleton replacement

Exercise

 

  • SingletonExercise2.pdf
  • monostate.cpp

Solution

 

Previous Topic
Back to Lesson
Next Topic
Manage Cookie Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
View preferences
{title} {title} {title}
Login
Accessing this course requires a login. Please enter your credentials below!

Lost Your Password?