#include <bits/stdc++.h>
using namespace std;
class Student {
private:
int roll;
string name;
float cgpa;
public:
// Default constructor
Student() {
roll = 11130;
name = "Fahim";
cgpa = 3.45;
}
// ✅ Copy constructor
Student(Student &obj) {
roll = obj.roll;
name = obj.name;
cgpa = obj.cgpa;
}
// Display function
void display() {
cout << "Roll: " << roll << endl;
cout << "Name: " << name << endl;
cout << "CGPA: " << cgpa << endl;
}
};
int main() {
Student s1; // default constructor
Student s2 = s1; // ✅ copy constructor called
cout << "Student 1:\n";
s1.display();
cout << "\nStudent 2 (Copied):\n";
s2.display();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBTdHVkZW50IHsKcHJpdmF0ZToKICAgIGludCByb2xsOwogICAgc3RyaW5nIG5hbWU7CiAgICBmbG9hdCBjZ3BhOwoKcHVibGljOgogICAgLy8gRGVmYXVsdCBjb25zdHJ1Y3RvcgogICAgU3R1ZGVudCgpIHsKICAgICAgICByb2xsID0gMTExMzA7CiAgICAgICAgbmFtZSA9ICJGYWhpbSI7CiAgICAgICAgY2dwYSA9IDMuNDU7CiAgICB9CgogICAgLy8g4pyFIENvcHkgY29uc3RydWN0b3IKICAgIFN0dWRlbnQoU3R1ZGVudCAmb2JqKSB7CiAgICAgICAgcm9sbCA9IG9iai5yb2xsOwogICAgICAgIG5hbWUgPSBvYmoubmFtZTsKICAgICAgICBjZ3BhID0gb2JqLmNncGE7CiAgICB9CgogICAgLy8gRGlzcGxheSBmdW5jdGlvbgogICAgdm9pZCBkaXNwbGF5KCkgewogICAgICAgIGNvdXQgPDwgIlJvbGw6ICIgPDwgcm9sbCA8PCBlbmRsOwogICAgICAgIGNvdXQgPDwgIk5hbWU6ICIgPDwgbmFtZSA8PCBlbmRsOwogICAgICAgIGNvdXQgPDwgIkNHUEE6ICIgPDwgY2dwYSA8PCBlbmRsOwogICAgfQp9OwoKaW50IG1haW4oKSB7CiAgICBTdHVkZW50IHMxOyAgICAgICAgLy8gZGVmYXVsdCBjb25zdHJ1Y3RvcgogICAgU3R1ZGVudCBzMiA9IHMxOyAgIC8vIOKchSBjb3B5IGNvbnN0cnVjdG9yIGNhbGxlZAoKICAgIGNvdXQgPDwgIlN0dWRlbnQgMTpcbiI7CiAgICBzMS5kaXNwbGF5KCk7CgogICAgY291dCA8PCAiXG5TdHVkZW50IDIgKENvcGllZCk6XG4iOwogICAgczIuZGlzcGxheSgpOwoKICAgIHJldHVybiAwOwp9Cg==