Прежде всего, используйте новый синтаксис для соединений:
connect(copyr, &QPushButton::clicked, this, &ClassName::c2c);
Однако вы не можете подключить сигнал, который не предоставляет параметр, к слоту, который его ожидает. Здесь у вас есть несколько вариантов:
Обернуть соединение в лямбду, если вы хотите, чтобы параметр из соединительного кода поступал в слот следующим образом:
connect( copyr, &QPushButton::clicked, [this, txt](){ this->c2c(txt); } );
Скажите, что Вы работаете над компилятором с:
unsigned char
8 битовunsigned short
32 битаunsigned int
64 битаИ неподписанный интервал является 'самым быстрым'. На той платформе:
uint16_t
не было бы доступноuint_least16_t
были бы 32 битовых значенияuint_fast16_t
были бы 64 битовых значенияНемного тайный, но это - то, для чего это.
То, насколько полезный они, является другой историей - я вижу точные варианты размера все время. Это - то, что хотят люди. 'Наименьшее' и 'быстрые' версии, к которым я видел используемый достаточно близкий никогда (возможно, что это было только в примере кода - я действительно не уверен).
Это - часть c стандарта. Этому не нужен хороший вариант использования.:P
Посмотрите эту страницу и ищите раздел, названный "Целые типы Минимальной ширины".
А-ч, ссылка, которую отправил Patrick, включает, это "Имя определения типа uint_leastN_t называет тип беззнаковых целых чисел с шириной, по крайней мере, N, таким, что никакой тип беззнаковых целых чисел с меньшим размером не имеет, по крайней мере, указанную ширину".
Таким образом, мое текущее понимание:
uint_least16_t пустяк, который способен к содержанию uint16
uint_fast16_t самая быстрая вещь, которая способна к содержанию uint16
uint16_t точно uint16, к сожалению, может не быть доступным на всех платформах, ни на какой платформе, где, доступный uint_least16_t, будет относиться к нему. Таким образом, если бы это, как гарантировали, будет существовать на всех платформах, то нам не был бы нужен uint_least16_t вообще.