what is member initialization list in c++ code example

Example 1: member initializer list in c++

// Constructor Member Initializer List

#include <iostream>

class Example
{
private:
    int x, y;

public:
    Example() : x(0), y(0) {}
    Example(int x1, int y1) : x(x1), y(y1) {}
    ~Example() {}
};

int main()
{
    Example e;
}

Example 2: c++ class member initializer list

#include <iostream>
class Entity {
private : 
	std::string m_Name;
	int m_Score;
	int x, y, z;
public:
	Entity()
		:m_Name("[Unknown]"),m_Score(0),x(0),y(0),z(0)//initialize in the order of how var are declared
	{
	}
	Entity (const std::string& name) 
		:m_Name(name)
	{}
	const std::string& GetName() const { return m_Name; };
};
int main()
{
	Entity e1;
	std::cout << e1.GetName() << std::endl;
	Entity e2("Caleb");
	std::cout << e2.GetName() << std::endl;
	std::cin.get();
}

Example 3: c++ initialization list

class Something
{
private:
    int m_value1;
    double m_value2;
    char m_value3;
 
public:
    Something()
    {
        // These are all assignments, not initializations
        m_value1 = 1;
        m_value2 = 2.2;
        m_value3 = 'c';
    }
};

Tags:

Cpp Example