A SERVICE OF

logo

Extract Class
Breaks a large class into a better abstraction by moving some responsibilities into a new class or inter-
face. This refactoring creates new files. When using the Extract Class refactoring, keep in mind the follow-
ing information:
The default path uses the same directory as the original class.
The default file names are the <class_name>.(cpp/h).
Default paths and file names can be changed.
The files will be added to the current project.
If version control is enabled, you are prompted to add the files to the version control system.
The new class will generate a default constructor, and a constructor that takes a parameter per mem-
ber variable moved. Initializers in the original class' constructors for moved member variables are
moved to the new class' constructors.
Figure 6.39. C++ Refactoring: Extract Class 1
Figure 6.40. C++ Refactoring: Extract Class 2
C++ Refactoring
208