Если это необходимо только в конструкторе, почему бы просто не передать его в качестве параметра?
class Button: public QPushButton
{
public:
Button(int value, QWidget* parent = 0);
}
Если это нужно где-то кроме конструктора, было бы очень полезно узнать, что делает это значение. Это меняет внешний вид? Это меняет поведение? Я спрашиваю, потому что большинство способов предоставления вам прямого доступа к родителю привязывают ваш виджет к его родителю, и мне кажется, что есть более эффективные способы его разработки.
Например, если value
изменяется каким-либо важным образом в родительском элементе, вызовите метод в своем классе кнопок, чтобы уведомить их об изменении. Таким образом, любой может использовать ваш класс кнопок, если он вызывает соответствующие методы.
class Button: public QPushButton
{
public:
Button(int value, QWidget* parent = 0);
void updateValue(int value);
private:
int value;
}