c++

C++ object如何实现数据封装

小樊
85
2024-07-17 20:03:46
栏目: 编程语言

C++中的数据封装是通过类和对象实现的。在C++中,可以使用访问控制修饰符(public、private、protected)来控制类中的数据成员的访问权限。一般来说,数据成员应该设置为私有(private),只能通过公共成员函数(public member functions)来访问和修改数据成员的值,从而实现数据封装。

下面是一个简单的示例,展示了如何在C++中实现数据封装:

#include <iostream>

class Person {
private:
    std::string name;
    int age;

public:
    void setName(std::string n) {
        name = n;
    }

    std::string getName() {
        return name;
    }

    void setAge(int a) {
        if(a < 0) {
            std::cout << "Invalid age input" << std::endl;
            return;
        }
        age = a;
    }

    int getAge() {
        return age;
    }
};

int main() {
    Person p;
    p.setName("Alice");
    p.setAge(25);

    std::cout << "Name: " << p.getName() << std::endl;
    std::cout << "Age: " << p.getAge() << std::endl;

    return 0;
}

在上面的示例中,我们定义了一个包含私有数据成员name和age的Person类。我们使用公共成员函数setName和getName来访问和修改name数据成员,使用setAge和getAge来访问和修改age数据成员。这种方式可以确保数据成员只能通过类的公共接口来访问和修改,从而实现数据封装。

0
看了该问题的人还看了