MST

星途 面试题库

面试题:C++中构造函数重载的基本应用

请编写一个C++类,该类包含至少两个重载的构造函数。一个构造函数接受一个整数参数,用于初始化类中的某个成员变量;另一个构造函数接受两个整数参数,分别初始化类中的两个成员变量。并在主函数中创建该类的对象,调用这两个构造函数进行初始化,然后输出成员变量的值。
18.7万 热度难度
编程语言C++

知识考点

AI 面试

面试题答案

一键面试
#include <iostream>

class MyClass {
private:
    int num1;
    int num2;
public:
    MyClass(int n1) : num1(n1) {
        num2 = 0;
    }

    MyClass(int n1, int n2) : num1(n1), num2(n2) {
    }

    void printValues() {
        std::cout << "num1: " << num1 << ", num2: " << num2 << std::endl;
    }
};

int main() {
    MyClass obj1(5);
    obj1.printValues();

    MyClass obj2(10, 20);
    obj2.printValues();

    return 0;
}
  1. 类定义
    • 定义了MyClass类,包含两个私有成员变量num1num2
    • 第一个构造函数MyClass(int n1)接受一个整数参数n1,将num1初始化为n1num2初始化为0。
    • 第二个构造函数MyClass(int n1, int n2)接受两个整数参数n1n2,分别将num1num2初始化为对应的参数值。
    • 提供了printValues成员函数用于输出两个成员变量的值。
  2. 主函数
    • 创建了MyClass类的两个对象obj1obj2,分别调用两个不同的构造函数进行初始化,并调用printValues函数输出成员变量的值。