21xrx.com
2025-02-16 22:00:00 Sunday
登录
文章检索 我的文章 写文章
C++重写构造函数的实现方式
2023-06-23 17:13:57 深夜i     --     --
C++ 重写 构造函数 实现方式

C++中的构造函数是一个特殊的成员函数,用于在创建对象时对对象进行初始化。当类中没有定义构造函数时,C++会提供默认的构造函数,也称为无参构造函数。但是当需要指定特定的对象初始化方式时,可以通过重写构造函数来自定义构造函数。

重写构造函数一般有两种方式,分别是在类定义中实现和在类外实现。

在类定义中实现:

当需要对类进行简单的初始化时,可以在类定义中实现构造函数。例如:


class Animal {

public:

  Animal()

    age = 1;

    name = "Unknown";

  

  Animal(int newAge, std::string newName)

    age = newAge;

    name = newName;

  

private:

  int age;

  std::string name;

};

在上面的代码中,Animal类有两个构造函数,一个是无参构造函数,另一个是带参构造函数。这两个构造函数均在类定义中实现。

在类外实现:

当需要对类进行复杂的初始化时,可以在类外实现构造函数。例如:


class Animal {

public:

  Animal();

  Animal(int newAge, std::string newName);

private:

  int age;

  std::string name;

};

Animal::Animal()

  age = 1;

  name = "Unknown";

Animal::Animal(int newAge, std::string newName)

  age = newAge;

  name = newName;

在上面的代码中,Animal类有两个构造函数,一个是无参构造函数,另一个是带参构造函数。这两个构造函数均在类外实现。

重写构造函数是C++中的重要特性之一,可以根据需要灵活地对类进行初始化。但是需要注意,如果在类中定义了至少一个构造函数,则必须定义默认构造函数,以便可以通过无参方式创建对象。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复