C++学习笔记(十一):构造函数

  • 构造函数是一种特殊类型的方法,在每次实例化对象时运行,可以用来对类成员变量进行初始化。
  • C++学习笔记(十一):构造函数_第1张图片
  • 上述示例中未对类成员变量x和y进行初始化,打印出来的结果如上图所示,下图对类成员变量在构造函数中进行初始化。如果在Main函数中直接通过类名.变量名进行调用,则编译会报错,调用未初始化的成员变量。
  • C++学习笔记(十一):构造函数_第2张图片
  • C++学习笔记(十一):构造函数_第3张图片
  • 如上图,在类构造函数中对类成员变量进行初始化后,调用类的Print()函数,打印的结果时初始化的值。
  • 也可以在创建类对象的时候调用有参构造函数对类成员变量进行初始化,如下图所示:
  • #include 
    
    class Entity {
    public:
    	Entity()
    		: x(5.0f), y(3.1f)
    	{}
    	Entity(float x, float y)
    	{
    		this->x = x;
    		this->y = y;
    	}
    public:
    	float x, y;
    	void Print()
    	{
    		std::cout << x <<  "  " << y << std::endl;
    	}
    };
    int main()
    {
    	Entity e1;
    	/*std::cout << e1.x << std::endl;
    	e1.Print();*/
    	Entity e2(5.4f, 8.0f);
    	std::cout << e2.x << std::endl;
    
    	std::cin.get();
    }

    c++会为我们创建的类提供一个默认的无参构造函数,如果不想使用默认的无参构造函数,则可以在类中显示的将无参构造函数声明为private或者将无参构造函数删除,如下所示:

  • C++学习笔记(十一):构造函数_第4张图片
    C++学习笔记(十一):构造函数_第5张图片

你可能感兴趣的:(学习,笔记)