Дана переменная целого типа без знака: foo
допустим, я хочу сделать это:
const decltype<foo> bar{};
cout << (55834574890LL & ~bar) << endl;
Это дает мне ожидаемое 42. Но теперь давайте скажем, что я хочу покончить с bar
переменная. Так что-то вроде этого:
cout << (55834574890LL & ~decltype<foo>{}) << endl;
Но я просто получаю сообщение об ошибке:
ошибка: ожидаемое первичное выражение до
decltype
Я также пытался declval
но это возвращает ссылку, которая также не годится. Есть ли способ, которым я могу сделать это?
Других решений пока нет …