Back to Basics: Designing Classes (part 1 of 2)Back to Basics Designing Classes (part 1 of 2) Klaus Iglberger, CppCon 2021 klaus.iglberger@gmx.de2 Klaus Iglberger C++ Trainer/Consultant Author of the C++ math library (Co-)Organizer Beck, TDD by Example)The Challenge of Class Design 10 Guideline: Design classes for easy change. Guideline: Design classes for easy extensions.Design Guidelines 11 Back to Basics: Class Design (Part ) const; 23 Using inheritance naively to solve our problem easily leads to … … many derived classes; … ridiculous class names; … deep inheritance hierarchies; … duplication between similar implementations0 码力 | 87 页 | 5.64 MB | 6 月前3
Back to Basics: Designing Classes (part 2 of 2)Back to Basics Designing Classes (part 1 of 2) Klaus Iglberger, CppCon 2021 klaus.iglberger@gmx.de2 Klaus Iglberger C++ Trainer/Consultant Author of the C++ math library (Co-)Organizer duplication to enable you to change everything in one place (the DRY principle). Guideline: Design classes for easy change.Data Member Initialization 24 struct Widget { Widget() : Widget(42) // Decisions 63 Guideline: Encapsulate design decisions (i.e. variation points). Guideline: Design classes for easy change.Qualified/Modified Member Data 64 Back to Basics: Class Design (Part 1) The Challenge0 码力 | 76 页 | 2.60 MB | 6 月前3
Oracle VM VirtualBox 5.2.40 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4 The VirtualBox shell 50 5 Classes (interfaces) 52 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 52 and chapter 6, Enumerations (enums), page 351 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 422 页 | 2.45 MB | 6 月前3
Oracle VM VirtualBox 5.2.12 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4 The VirtualBox shell 50 5 Classes (interfaces) 52 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 52 and chapter 6, Enumerations (enums), page 350 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 421 页 | 2.43 MB | 6 月前3
Oracle VM VirtualBox 4.3.36 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4 The VirtualBox shell 48 5 Classes (interfaces) 50 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 50 and chapter 6, Enumerations (enums), page 317 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 376 页 | 1.99 MB | 6 月前3
Oracle VM VirtualBox 4.3.12 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4 The VirtualBox shell 48 5 Classes (interfaces) 50 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 50 and chapter 6, Enumerations (enums), page 317 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 376 页 | 2.24 MB | 6 月前3
Oracle VM VirtualBox 4.2.32 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4 The VirtualBox shell 42 5 Classes (interfaces) 44 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 44 and chapter 6, Enumerations (enums), page 289 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 339 页 | 2.07 MB | 6 月前3
Oracle VM VirtualBox 4.1.40 Programming Guide and Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4 The VirtualBox shell 42 5 Classes (interfaces) 44 5.1 IAdditionsFacility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . virtualization engine below. It is completely documented in this SDK Reference – see chapter 5, Classes (interfaces), page 44 and chapter 6, Enumerations (enums), page 262 – and available to anyone who client code that uses the web service: a) For Java as well as Python, the SDK contains easy-to-use classes that allow you to use the web service in an object-oriented, straightforward manner. We shall refer0 码力 | 306 页 | 1.92 MB | 6 月前3
Django CMS 4.1.x DocumentationExplanation and analysis of some key concepts in django CMS. Reference Technical reference material, for classes, methods, APIs, commands. Join us online The django CMS Association [https://www.django-cms.org/en/about-us/] makemigrations polls_cms_integration python manage.py migrate polls_cms_integration Note All plugin classes must inherit from cms.plugin_base.CMSPluginBase and must register themselves with the plugin_pool is the full example: This is just a basic example, and there’s a lot more to django CMS toolbar classes than this - see How to extend the Toolbar for more. from cms.utils.urlutils import admin_reverse0 码力 | 518 页 | 1.66 MB | 6 月前3
Class LayoutConsulting, Inc. www.stevedewhurst.com 1 Copyright © 2020 by Stephen C. Dewhurst and Daniel Saks C++ Classes Only non-static data declarations in a class definition add anything to the size of class objects duration. Therefore, we won’t be discussing static data members. Type member (included nested classes) do not affect class layout. Non-virtual member functions have no effect on class layout. However Space… An empty class has no non-static data members, no virtual functions, and no virtual base classes. We often call these types/objects/closures “stateless.” However, even an empty class must occupy0 码力 | 51 页 | 461.37 KB | 6 月前3
共 207 条
- 1
- 2
- 3
- 4
- 5
- 6
- 21













