example2_default_parametrized_constructors.cpp

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <string>

class Car {
private:
    std::string brand;
    std::string model;
    int year;

public:
    // Default constructor
    Car() : brand("Unknown"), model("Unknown"), year(0) {
        std::cout << "Default constructor called" << std::endl;
    }

    // Parameterized constructor
    Car(const std::string& b, const std::string& m, int y) 
        : brand(b), model(m), year(y) {
        std::cout << "Parameterized constructor called" << std::endl;
    }

    void display() const {
        std::cout << year << " " << brand << " " << model << std::endl;
    }
};

int main() {
    Car car1;  // Uses default constructor
    Car car2("Toyota", "Corolla", 2022);  // Uses parameterized constructor

    std::cout << "Car 1: ";
    car1.display();
    std::cout << "Car 2: ";
    car2.display();

    return 0;
}
Back to constructor