Size: a a a

cxx.Дискуссионная

2020 March 07

O

Ofee in cxx.Дискуссионная
Т-34 85
э, нет. В плюсах ты ЯВНО должен написать virtual именно в том месте, ГДЕ ОБЪЯВЛЯЕШЬ этот метод
И? А в Расте — на месте, где принимаешь полиморфный объект. Какая разница?
источник

Т8

Т-34 85 in cxx.Дискуссионная
Ofee
Да что такое эти твои виртуальные методы в C++?
источник

O

Ofee in cxx.Дискуссионная
Т-34 85
в плюсах идеально
Лишний оверхед повсюду
источник

O

Ofee in cxx.Дискуссионная
Т-34 85
в плюсах идеально
Ага, то-то basic_string использует трейты, а не наследование...
источник

Т8

Т-34 85 in cxx.Дискуссионная
а это кто
если не написано dyn, значит не виртуальные. dyn там не написано
я же и говорю - это эпик
источник

O

Ofee in cxx.Дискуссионная
Т-34 85
я же и говорю - это эпик
Да, максимальная явность. Ужасно же...
источник

Т8

Т-34 85 in cxx.Дискуссионная
Ofee
Зачем для каждого объекта хранить таблицу виртуальных методов, если можно её хранить только в объектах, требующих её? Зачем оверхед?
это вопрос к расту. В плюсах такой хуйни нет
источник

O

Ofee in cxx.Дискуссионная
Т-34 85
это вопрос к расту. В плюсах такой хуйни нет
Плюсы так и делают, храня указатель на таблицу, может, стоит выучить примеры реализаций собственного языка для начала?
источник

а

акварель на мету in cxx.Дискуссионная
Ofee
Плюсы так и делают, храня указатель на таблицу, может, стоит выучить примеры реализаций собственного языка для начала?
а почему не просто ссылку на функцию?
источник

Т8

Т-34 85 in cxx.Дискуссионная
Ofee
В QML? Очень интересное мнение
у тебя уже началась шиза?
https://doc.qt.io/qt-5/qml-qtquick-tableview.html
источник

O

Ofee in cxx.Дискуссионная
акварель на мету
а почему не просто ссылку на функцию?
Потому что функций может быть много
источник

а

акварель на мету in cxx.Дискуссионная
Ofee
Потому что функций может быть много
хм
источник

а

акварель на мету in cxx.Дискуссионная
ладно
источник

а

акварель на мету in cxx.Дискуссионная
Ofee
Потому что функций может быть много
а в расте как?
источник

O

Ofee in cxx.Дискуссионная
акварель на мету
а в расте как?
Так же, но мы не пихаем в каждый создающийся объект этот указатель. Только в те, с которыми нам точно нужно работать как с полиморфными
источник

Т8

Т-34 85 in cxx.Дискуссионная
а это кто
Таким образом в некоторых функциях метод будет виртуальным, а в некоторых статическим. Таким образом максимизируется использование статического полиморфизма и следовательно скорость
каким образом?
источник

O

Ofee in cxx.Дискуссионная
Т-34 85
у тебя уже началась шиза?
https://doc.qt.io/qt-5/qml-qtquick-tableview.html
Где в QML переопределение метода? Это же был самый главный критерий ООП несколько минут назад
источник

а

акварель на мету in cxx.Дискуссионная
Ofee
Так же, но мы не пихаем в каждый создающийся объект этот указатель. Только в те, с которыми нам точно нужно работать как с полиморфными
но это же всего 16 байт
источник

а

акварель на мету in cxx.Дискуссионная
Ofee
Так же, но мы не пихаем в каждый создающийся объект этот указатель. Только в те, с которыми нам точно нужно работать как с полиморфными
и можно пример где такое может пригодится?
источник

Т8

Т-34 85 in cxx.Дискуссионная
Ofee
И будешь тащить указатель на эту таблицу где надо и где не надо, повышая шанс на отстрел ноги где-нибудь
virtual не на ровном месте юзают. Раз взяли, значит, надо. А смирительная рубашка нужна лишь раставчанинам, это они не могут написать ни строчки без бага
источник