30/09/2018, 18:13

Muốn chuyển member của class về private nhưng vẫn có thể truy cập được các giá trị này thì phải làm sao?

mình có đoạn code:

class CPoint2D
{
public:
    double dX;
    double dY;
};

class CCircle
{
private:
    CPoint2D pt2DCenter;
    double dRadius;
public:
    void Init(double ,double ,double );
};

void CCircle::Init(double toaDoX,double toaDoY,double banKinh)
{
    pt2DCenter.dX=toaDoX;
    pt2DCenter.dY=toaDoY;
    dRadius=banKinh;
}

trong class CPoint2D mình muốn chuyển về private mà biến pt2DCenter vẫn có thể truy cập được thì làm sao

Mai Anh Dũng viết 20:17 ngày 30/09/2018

Bạn sử dụng get/set cho dYdY

class CPoint2D
{
public:
    double get_dX() {
        return _dX;
    }
    void set_dX(double dX) {
        _dX = dX;
    }
    double get_dY() {
        return _dY;
    }
    void set_dY(double dY) {
        _dY = dY;
    }
private:
    double _dX;
    double _dY;
};

Cách sử dụng

pt2DCenter.set_dX(toaDoX);
pt2DCenter.set_dY(toaDoY);
Bài liên quan
0