ошибка: адрес перегруженной функции без контекстной информации о типе
Есть две функции с именем operator++
(это бит «перегруженной функции» сообщения), вам нужно указать, какую вы хотите (это «контекстная информация о типе»):
n > 0 ? (que& (que::*)())&que::operator++ : 0
Вы должны учитывать, что вышеприведенное подвыражение не зависит от прилагаемого полного выражения, присваивания go
. Таким образом, он должен быть правильным сам по себе, то есть он не может использовать тип go
, чтобы выбрать правильную перегрузку, потому что он не является частью этого конкретного подвыражения.