Lecture overview -- Keyboard shortcut: 'u'  Previous page: Classes and Conversion: Examples -- Keyboard shortcut: 'p'  Next page: Const member functions -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Lecture 3 - Page 21 : 36
Notes about C++
Abstraction Mechanisms, Part 1
Static class members

Static class members are related to the class as such

Static class members in C++ are similiar to static variables and methods in Java and C#

  • The C++ Programming Language: Page 228
 

y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/point.hA variant of class Point with static members.


y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/point.ccImplementation of class Point.


y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/prog.ccA client of class Point.


y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/program-outputProgram output.


Initialization of non-local static objects is problematic in general (in particular initialization order).

Therefore we explore an alternative.

  • Effective C++, Third edition: Item 4, and 18 (page 80)
 

y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/alternative/point.hA variant of class Point with static member function for the defaultPoint.


y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/alternative/point.ccImplementation of class Point.


y:/Kurt/Files/Advanced-programming-cpp/cpp/kn/static-members/alternative/prog.ccA client of class Point.