(qt) Type을 매개 변수로 사용하고이를 사용하여 자식을 찾는 함수를 작성하려고합니다. 내 기능은 다음과 같습니다 : 나는 또한 내가 다른 클래스에서이 함수를 사용하는 클래스의 객체를 인스턴스화 함수의 매개 변수로 Qt 형식
template <typename QType>
void MyClass::activateElements(QWidget *widget, QType)
{
QList<QType *> buttons = (* widget).findChildren<QType *>();
foreach(QType *button, buttons)
{
button->setEnabled(true);
}
}
을 시도
template <typename QType>
void MyClass::activateElements(QWidget *widget, QType t)
{
QList<QType *> buttons = widget->findChildren(t);
foreach(QType *button, buttons)
{
buttons->setEnabled(true);
}
}
. 이 나는이처럼 사용하려고 :
error: ‘QDoubleSpinBox::QDoubleSpinBox(const QDoubleSpinBox&)’ is private Q_DISABLE_COPY(QDoubleSpinBox)
내가 QDoubleSpinBox 다른 사람이라는 것을,이 문제를 처리 할 방법 : 나는 다음과 같은 오류가 있기 때문에이 시점에서
QDoubleSpinBox x;
object_of_my_class->activateElements(correctWidget, x);
내가 박히 은밀한? 함수를 잘못 작성하는 방법에 접근 했습니까? 아니면 잘못 사용하고 있습니까? 그것을 할 수있는 방법이 있습니까?
"나는이 문제를 처리 할 것 _How, 그 QDoubleSpinBox : 그러나, 당신이 정말로은 기존 개체의 형태 추론을 사용하려면 경우
는 (금지) 복사를 방지하기 위해 참조하여 통과 _ ""QDoubleSpinBox의 ** copy-constructor **은 private입니다 (즉, 복사 할 수 없습니다). 값으로 전달하는 대신 참조로 전달하십시오. –