Получение различных и несопоставимых типов из int в C ++

Я знаю, что не могу получить от int, и в этом даже нет необходимости, это всего лишь одно (не) решение, которое пришло мне в голову для проблема ниже.

У меня есть пара (foo, bar) , обе из которых представлены внутри int , но мне нужен typeof (foo) быть несовместимым с typeof (bar) . В основном это сделано для того, чтобы я не мог передать (foo, bar) функции, которая ожидает (bar, foo) . Если я правильно понимаю, typedef не сделает этого, поскольку это всего лишь псевдоним. Как это было бы проще всего сделать. Если бы мне пришлось создать два разных класса для foo и bar , было бы утомительно явно указать все операторы, поддерживаемые int . Я хочу этого избежать.

18
задан Nathan Kleyn 13 April 2013 в 20:56
поделиться