Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: All
Aug 21, 2001



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

Avoid Unnecessary Constructors and Destructors

Some programmers consistently define an empty constructor and destructor in their classes, as in:
class A
 A() {}
 ~A() {}

This is totally useless. C++ guarantees that when a class needs any of the four special member functions (default constructor, copy constructor, assignment operator and destructor), the compiler will synthesize it, unless the programmer explicitly declared it. In the example above, the programmer defined empty constructor and destructor although the class clearly doesn't need any of these. Hadn't the programmer declared these member functions, the class would have been more compact and easier to maintain. Furthermore, this practice violates a common C++ principle: Don't write code that the compiler can generate correctly by itself
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