在这个私有属性的类中为该属性提供get和set方法。

如果不能提供get和set方法就用反射来获取,Java中说的封装可以被反射打破。
私有变量用private修饰静态成员变量用static修饰私有变量只能被该类调用,不能被其他类(包括子类)调用。静态成员变量也可以分私有或公有的,调用静态成员变量只需用类名加“.”。其实private是修饰的共享范围,static是修饰的变量类型。
如果另一个类的变量是静态变量,用 类名.变量名 调用
如果是public的变量,先创建另一个类的对象,用 对象名.变量名 调用
如果是private的变量,用set、get方法操作对象
还可以利用反射机制操作变量
我这边给你举一个例子吧,假如你的程序的A类中有一个QLineEdit,然后你想从B类去给这个QLineEdit设定内容或者获取这个QLineEdit的内容C/C++ codeA.h:public:void setLineEditValue(const QString& value);QString getLineEditValue();A.cpp:void A::setLineEditValue(const QString& value){LineEdit->setText(value);}QString A::getLineEditValue(){return LineEdit->text();}B.cppA *a = new A(this);a->setLineEditValue("Hello Qt!!!);QString string;string = a->getLineEditValue();这样在B类中就可以通过A类的对象来访问自身的私有变量了
1. 不能访问2. 因为槽函数是一个特殊的成员函数,它是由Qt框架自动生成的,用于响应信号的函数。槽函数只能访问类中的公有成员和保护成员,无法直接访问私有成员。3. 如果需要在槽函数中访问私有变量,可以通过提供公有的访问函数或者友元函数来间接地访问私有变量。这样可以保证私有变量的封装性,同时实现对私有变量的访问和操作。
Qt 遵循C++的规则,当 槽函数 作为一个成员 函数 ,公有 槽 可以被其他类 调用 ,而 私有槽 只能被类自身 调用 。 当 槽函数 被信号触发而被 调用 时,公有 槽 和 私有槽 没有区别,它们都能被外部信号触发。
在一个项目里 、不管是变量 还是方法public 谁都能用 protect 自身、子类和同一个包中所有的类都能用private 只能被自身访问和修改 default、FRIendly 默认的、友好的、被本身和同一包用