Почему перегруженный оператор не может принимать unsigned int?
Пример:
exampleClass& operator++(exampleClass& ex,unsigned int intt)
{
}
ошибка:
error: postfix ‘exampleClass& operator++(exampleClass&, unsigned int)’ must have ‘int’ as its second argument
friend exampleClass& operator++(exampleClass& ex,unsigned int intt);
++ - либо унарный, либо постфиксный оператор. В любом случае он может принимать только один-единственный аргумент. И это ваш exampleClass. Больше у него нет никаких аргументов.
Опциональный т. наз. "второй" параметр в объявлении функции operator ++ - фиктивный. Это "костыль", предназначенный для отличения постфиксного ++ от префиксного ++ при объявлении. Этот фиктивный второй параметр должен иметь тип int. Так требуют правила языка С++. Какой тип имеет этот второй "параметр" для вас значения иметь не должно, ибо фактически принимать вы его скорее всего никогда не будете.
Обратите также внимание на то, что объявление operator ++ с дополнительным фиктивным параметром (типа int) перегружает именно постфиксный оператор ++ для вашего класса. Традиционно, постфиксный оператор ++ должен возвращать "старое", исходное значение своего операнда (значение до инкремента). Для выполнения этого требования обычно приходится возвращать результат такого ++ по значению, а не по ссылке. Что вы собрались делать внутри своего ++ и как вы планируете возвращать результат по ссылке - не ясно. Закрадывается подозрение, что на самом деле вы пытаетесь реализовать функциональность оператора +=, но зачем-то вцепились в ++.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости