Сообщение Re[10]: Не могу понять ссылки в C++ от 29.06.2024 23:33
Изменено 30.06.2024 20:20 landerhigh
Re[10]: Не могу понять ссылки в C++
Здравствуйте, T4r4sB, Вы писали:
L>>Задним числом-то все умны.
TB>Встроить в язык бильтин "has_field" и "has_method" — это блин строчек 10 в коде компилятора. Обходные пути через "давай попытаемся вызвать такой-то метод и в случае ошибки компиляции выберем другую перегрузку" — это блин через жопу.
Опять же, задним числом все умны и вообще афигеть стратеги.
Путаешь причину и следствие. Пытаешься выкатывать претензии инженерам ранних GMS протоколов, что размер SMS был ограничен 170 символами, если за пределы 7 бит не выходить, и доставка не гарантировалась.
Никто не планировал, что механизм шаблонов со своим sfinae внезапно позволит делать такие адские штуки прямо в compile time.
Но вышло то, что вышло. С точки зрения юзера, которому нужно просто has_field — это пипец как криво.
С точки зрения инженера — используется встроенная в язык фича, посему has_field получается вообще халявным. Короче — работает. Причем, искаропки. Причем, соответствует стандарту.
TB>Да, это слишком примитивно, потому что потом захочется узнать номер поля с таким именем, его тип, смещение итд. Но блин, неужели так сложно CTTI вшить?
А ты попробуй хотя бы черновик такого proposal написать
L>>Задним числом-то все умны.
TB>Встроить в язык бильтин "has_field" и "has_method" — это блин строчек 10 в коде компилятора. Обходные пути через "давай попытаемся вызвать такой-то метод и в случае ошибки компиляции выберем другую перегрузку" — это блин через жопу.
Опять же, задним числом все умны и вообще афигеть стратеги.
Путаешь причину и следствие. Пытаешься выкатывать претензии инженерам ранних GMS протоколов, что размер SMS был ограничен 170 символами, если за пределы 7 бит не выходить, и доставка не гарантировалась.
Никто не планировал, что механизм шаблонов со своим sfinae внезапно позволит делать такие адские штуки прямо в compile time.
Но вышло то, что вышло. С точки зрения юзера, которому нужно просто has_field — это пипец как криво.
С точки зрения инженера — используется встроенная в язык фича, посему has_field получается вообще халявным. Короче — работает. Причем, искаропки. Причем, соответствует стандарту.
TB>Да, это слишком примитивно, потому что потом захочется узнать номер поля с таким именем, его тип, смещение итд. Но блин, неужели так сложно CTTI вшить?
А ты попробуй хотя бы черновик такого proposal написать
Re[10]: Не могу понять ссылки в C++
Здравствуйте, T4r4sB, Вы писали:
L>>Задним числом-то все умны.
TB>Встроить в язык бильтин "has_field" и "has_method" — это блин строчек 10 в коде компилятора. Обходные пути через "давай попытаемся вызвать такой-то метод и в случае ошибки компиляции выберем другую перегрузку" — это блин через жопу.
Опять же, задним числом все умны и вообще афигеть стратеги.
Путаешь причину и следствие. Пытаешься выкатывать претензии инженерам раннихGMS GSM протоколов, что размер SMS был ограничен 170 символами, если за пределы 7 бит не выходить, и доставка не гарантировалась.
Никто не планировал, что механизм шаблонов со своим sfinae внезапно позволит делать такие адские штуки прямо в compile time.
Но вышло то, что вышло. С точки зрения юзера, которому нужно просто has_field — это пипец как криво.
С точки зрения инженера — используется встроенная в язык фича, посему has_field получается вообще халявным. Короче — работает. Причем, искаропки. Причем, соответствует стандарту.
TB>Да, это слишком примитивно, потому что потом захочется узнать номер поля с таким именем, его тип, смещение итд. Но блин, неужели так сложно CTTI вшить?
А ты попробуй хотя бы черновик такого proposal написать
L>>Задним числом-то все умны.
TB>Встроить в язык бильтин "has_field" и "has_method" — это блин строчек 10 в коде компилятора. Обходные пути через "давай попытаемся вызвать такой-то метод и в случае ошибки компиляции выберем другую перегрузку" — это блин через жопу.
Опять же, задним числом все умны и вообще афигеть стратеги.
Путаешь причину и следствие. Пытаешься выкатывать претензии инженерам ранних
Никто не планировал, что механизм шаблонов со своим sfinae внезапно позволит делать такие адские штуки прямо в compile time.
Но вышло то, что вышло. С точки зрения юзера, которому нужно просто has_field — это пипец как криво.
С точки зрения инженера — используется встроенная в язык фича, посему has_field получается вообще халявным. Короче — работает. Причем, искаропки. Причем, соответствует стандарту.
TB>Да, это слишком примитивно, потому что потом захочется узнать номер поля с таким именем, его тип, смещение итд. Но блин, неужели так сложно CTTI вшить?
А ты попробуй хотя бы черновик такого proposal написать