21xrx.com
2024-12-23 01:22:45 Monday
登录
文章检索 我的文章 写文章
C++构造函数简介
2023-06-26 15:52:43 深夜i     --     --
C++ 构造函数 简介

C++是一种强大的编程语言,它提供了许多功能,其中之一是构造函数。构造函数是一个特殊的函数,它在对象被创建时被调用。它的主要目的是初始化对象的成员变量。

要定义一个构造函数,我们可以使用与类名称相同的名称,并使用一个特殊的语法来标识它。例如,以下是一个简单类的构造函数:


class Person {

public:

  Person()

    name = "John";

    age = 20;

  

private:

  std::string name;

  int age;

};

这个构造函数的作用是初始化Person对象的成员变量name和age。在这个例子中,我们简单地将它们设置为默认值。

当我们创建一个Person对象时,这个构造函数将被调用,如下所示:


Person p;

此时,p的name属性将被设置为“John”,age属性将被设置为20。

除了默认构造函数之外,我们还可以定义带参数的构造函数。这允许我们在创建对象时传递参数,并使用它们来初始化对象的成员变量。例如,以下是一个带参数的构造函数:


class Person {

public:

  Person(std::string n, int a)

    name = n;

    age = a;

  

private:

  std::string name;

  int age;

};

在这个例子中,我们定义了一个Person构造函数,它接受两个参数:一个字符串和一个整数。当我们创建一个Person对象时,我们可以为这些参数传递值,如下所示:


Person p("Kate", 25);

此时,p的name属性将被设置为“Kate”,age属性将被设置为25。

构造函数在对象创建时执行,因此我们不能手动调用它们。但是,我们可以使用初始化列表来调用它们。这允许我们在创建对象时调用多个构造函数,并指定一些默认值。例如,以下是一个使用初始化列表的构造函数:


class Person {

public:

  Person(std::string n) : Person(n, 0) {}

  

  Person(std::string n, int a)

    name = n;

    age = a;

  

private:

  std::string name;

  int age;

};

在这个例子中,我们定义了两个构造函数。第一个构造函数接受一个字符串参数,它使用了初始化列表来调用第二个构造函数,并设置age属性的默认值为0。

在C++中,构造函数是一种强大的工具,它们可用于初始化对象的成员变量。我们可以定义默认构造函数和带参数的构造函数,并使用初始化列表来扩展它们的功能。使用构造函数可以更方便地创建和初始化对象,并使代码更容易理解和维护。

  
  

评论区

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