使用数据隐藏和封装保存学生信息的 C++ 程序

假设我们要使学生数据类型具有数据隐藏和封装。学生必须有名字、姓氏、年龄和班级项目,但这些变量不能直接访问。我们必须定义一些函数,例如get_firstname() set_firstname(),get_age() set_age()等来检索和更新变量值,以及一个to_string()以这种格式(年龄、名字、姓氏、班级)显示学生详细信息的函数。从控制台输入四个参数,并使用我们定义的 setter 方法设置它们,并使用 getter 方法显示每个项目,最后使用to_string()方法。

所以,如果输入是这样的

priyam

kundu

16

10

那么输出将是

16

priyam

kundu

10

(16, priyam, kundu, 10)

示例

让我们看看以下实现以获得更好的理解 -

#include <iostream>

#include <sstream>

using namespace std;

class Student{

    private:

    int age, cl;

    string first_name, last_name;

    public:

    int get_age(){return age;}

    int get_class(){return cl;}

    string get_firstname(){return first_name;}

    string get_lastname(){return last_name;}

    void set_age(int a){age = a;}

    void set_class(int c){cl = c;}

    void set_firstname(string fn){first_name = fn;}

    void set_lastname(string ln){last_name = ln;}

    string to_string(){

        stringstream ss;

        ss << "(" << age << ", " << first_name << ", " << last_name << ", " << cl << ")";

       

        return ss.str();

    }

};

int main() {

    Student stud;

    int age, cl;

    string first_name, last_name;

    cin >> first_name >> last_name >> age >> cl;

    stud.set_age(age);

    stud.set_class(cl);

    stud.set_firstname(first_name);

    stud.set_lastname(last_name);

    cout << stud.get_age() << endl;

    cout << stud.get_firstname() << endl;

    cout << stud.get_lastname() << endl;

    cout << stud.get_class() << endl;

    cout << endl << stud.to_string();

}

输入

priyam

kundu

16

10

输出结果
16

priyam

kundu

10

(16, priyam, kundu, 10)

以上是 使用数据隐藏和封装保存学生信息的 C++ 程序 的全部内容, 来源链接: utcz.com/z/327427.html

回到顶部