21xrx.com
2025-01-12 21:22:03 Sunday
文章检索 我的文章 写文章
C++创建子类对象的步骤
2023-07-04 10:32:33 深夜i     11     0
继承父类 定义子类构造函数 初始化子类特有的成员变量 调用父类构造函数

在C++编程中,子类是从父类继承而来的类,它可以使用父类的属性和方法,并且可以拥有自己的属性和方法。创建子类对象也是常见的操作,下面是C++创建子类对象的步骤。

1. 定义父类和子类

首先需要在程序中定义一个父类和一个子类。例如,定义一个Person类作为父类,定义一个Student类作为子类,代码如下:

class Person {
  private:
    string name;
  public:
    void setName(string n)
      name = n;
    
    string getName()
      return name;
    
};
class Student : public Person {
  private:
    int grade;
  public:
    void setGrade(int g)
      grade = g;
    
    int getGrade()
      return grade;
    
};

在这个例子中,Person类有一个私有属性name和两个公有方法setName和getName,Student类从Person类继承而来,并且增加了一个私有属性grade和两个公有方法setGrade和getGrade。

2. 创建子类对象

在主函数中,通过创建Student类的对象来创建一个子类的实例。例如:

int main() {
  Student s;
  s.setName("Alice");
  s.setGrade(90);
  cout << "The student's name is " << s.getName() << endl;
  cout << "The student's grade is " << s.getGrade() << endl;
  return 0;
}

在这个例子中,通过将Student类实例化为s对象,并使用父类Person中的setName方法为s对象设置名称。同时,在子类Student中设置s对象的成绩并使用getGrade方法获取它的成绩。

3. 使用构造函数创建子类对象

当然,也可以使用构造函数创建子类对象。例如,在Student类中可以定义一个构造函数来创建一个子类对象,如下所示:

class Student : public Person {
  private:
    int grade;
  public:
    Student(string n, int g) {
      setName(n);
      grade = g;
    }
    void setGrade(int g)
      grade = g;
    
    int getGrade()
      return grade;
    
};

这里,定义了一个新的构造函数,它接受一个字符串和一个整数作为参数,并调用setName方法将名称设置为该字符串。然后,使用参数g设置子类成绩。现在,我们可以在主函数中调用这个构造函数来创建子类对象,例如:

int main() {
  Student s("Alice", 90);
  cout << "The student's name is " << s.getName() << endl;
  cout << "The student's grade is " << s.getGrade() << endl;
  return 0;
}

通过这种方式,可以非常方便地创建子类对象。

总结

在C++中,创建子类对象是非常常见的操作。我们可以通过定义父类和子类、创建子类对象、或者使用构造函数等多种方式来创建子类对象。无论哪种方式都可以为程序提供很好的灵活性和可扩展性。

  
  

评论区

请求出错了