Было вот так, все работало:
QObject::connect(&counter, SIGNAL(counterChanged(int)), &lbl, SLOT(setNum(int)));
Теперь не знаю, как можно передать параметр от counterChanged в setNum в новой версии connect:
QObject::connect(&counter, &Counter::counterChanged, &lbl, &QLabel::setNum);
Вот способ, с которым я раньше работал и всё было нормально:
QObject::connect(&counter, static_cast<void (Counter::*)(int)>(&Counter::counterChanged), &lbl, &QLabel::setNum);
То есть нужно привести функцию к требуемому типу. Но в документации недавно появился новый способ, но я его не проверял. Этот способ требует включения C++14.
QObject::connect(&counter, QOverload<int>::of(&Counter::counterChanged), &lbl, &QLabel::setNum);
Сборка персонального компьютера от Artline: умный выбор для современных пользователей