Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: All
Mar 27, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Avoid Improper Inheritance

Using public inheritance with two classes that do not fully comply with the is-a relation (although they are related to one another) is a common design mistake. For example, deriving class Stack from class List may indicate a design flaw. A stack is not a list. Both classes support some common operations, yet using public inheritance is too strong a statement about the relationship between the two. Such improper inheritance relations can result in serious maintenance problems. In this case, private inheritance--or better yet, a simple containment relation--would be more suitable.
Danny Kalev
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date