Не кинокритик. Не палеонтолог. (plakhov) wrote,
Не кинокритик. Не палеонтолог.
plakhov

Categories:

C(++) загадка

Придумаете способ ошибиться с числом уровней indirection'а указателя так, чтобы все отлично компилировалось, не падало, но работало неправильно?

Формальная постановка задачи: написать код, который компилируется, работает неверно (но не падает), и исправляется расстановкой и/или удалением некоторого количества символов * и & (только в контексте объявления, разыменования или получения указателя).
Мой ответ через пару часов. Комментарии пока скринятся.

Upd. Простая что-то загадка получается. Давайте усложним:
1) не пользоваться перегрузкой функций: слишком уж легко объявить f(T) и f(T*), ведущие себя по-разному
2) не пользоваться c-style и reinterpret-cast'ами
3) (нечеткое правило) код должен быть более-менее естественным (в том смысле, что вы не удивитесь, встретив его в реальном проекте)

Тем, кто дочитал, в качестве бонуса анекдот (дважды встречал его в "работающем" коде разных авторов):
if (x != ENUM_ONE_VALUE || x != ENUM_OTHER_VALUE) ...;
(компиляторы при этом злодейски молчат)

Upd. Ответы открыл, мой вариант в следующем посте
Tags: soft
Subscribe

  • Где как справляются с пандемией

    Аналитики из Financial Times собрали данные по смертности от всех причин по странам и регионам в одну табличку на Гитхабе. Для интересующихся…

  • Про аргументы и факты

    Мне всегда любопытно, что творится в головах у спорщиков, когда кто-то из них находит красивый и наглядный пример, на первый взгляд, в поддержку…

  • Онлайн-тест Плахова

    Представьте себе некий давний спор. Такой, за которым вы -- прямо или косвенно -- провели онлайн бесчисленные часы; много читали википедию, и даже…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 18 comments

  • Где как справляются с пандемией

    Аналитики из Financial Times собрали данные по смертности от всех причин по странам и регионам в одну табличку на Гитхабе. Для интересующихся…

  • Про аргументы и факты

    Мне всегда любопытно, что творится в головах у спорщиков, когда кто-то из них находит красивый и наглядный пример, на первый взгляд, в поддержку…

  • Онлайн-тест Плахова

    Представьте себе некий давний спор. Такой, за которым вы -- прямо или косвенно -- провели онлайн бесчисленные часы; много читали википедию, и даже…