Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Intermediate
Jul 19, 2001



Application Security Testing: An Integral Part of DevOps

Listing Members in an Initialization List

This tips explains how to list members in an initialization list in the order in which they are declared.

Take a class Array:
class Array {
 int *m_piData; // ptr to actual array data
 unsigned m_uiSize;// # of elements in the array
 Array (unsigned size);

Array::Array (unsigned size): m_uiSize(size), 		

The above code fragment does not reveal how much memory is held by the m_piData. This is because the class members are initialized in the order of their declaration in the class. The order in which they are listed in a member initialization list does not make any difference. In the Array class, m_piData will always be initialized first, followed by m_uiSize.

If the initialization of a data member needs the value of another data member, then it is safer to initialize them in the body of the constructor.
Nitin Garg
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