Пытаюсь заставить сигналы работать в моем QT. Мне нужен совет и помощь - PullRequest
0 голосов
/ 29 ноября 2009

Итак, у меня есть основная функция:

string s = "\nWelcome to Rawr\n";
const QString output(s);
**emit output(output);       <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Getting an error here**

Я установил Сигнал в QT Desginer с именем: output (const QString & s)

Мой приемник сигнала - это моя "форма" ... в моей форме. У меня есть: Слот называется "changeOutput (const QString & s).

void Client::changeOutput(const QString &s)
{
    output_box.setText(s);
}

output_box - это поле QTextEdit.

Я получаю ошибку: TCPClient.cpp: 122: ошибка: нет совпадения для вызова ‘(const QString) (const QString &)’

Что я делаю не так?

Спасибо:)

1 Ответ

2 голосов
/ 29 ноября 2009

Поскольку вы объявили переменную output, имя output относится к этой переменной в локальной области. Компилятор не знает, что в output(output) вы хотите, чтобы один output ссылался на переменную, а другой output - на слот / метод.

Используйте другое имя для локальной переменной, чтобы избежать этого столкновения.

...