Size: a a a

pro.graphon (and gamedev)

2020 March 23

PK

Pavel Kazakov in pro.graphon (and gamedev)
disba1ancer
а зачем мне это?
я не понял что такое пропрыгать все деструкторы -- ты же их вызвать хотел скопом зачем-то?
источник

I

Ioann_V in pro.graphon (and gamedev)
Ioann_V
но в Си, кстати, есть restrict key word
а в плюсах - нету
источник

d

disba1ancer in pro.graphon (and gamedev)
Ioann_V
и можно и нужно, и в плюсах тоже
если такое сказать в @supapro сразу закидают...
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
disba1ancer
если такое сказать в @supapro сразу закидают...
не закидают, если кейс нормальный
источник

d

disba1ancer in pro.graphon (and gamedev)
Pavel Kazakov
я не понял что такое пропрыгать все деструкторы -- ты же их вызвать хотел скопом зачем-то?
так я про си, где нету автоматического удаления
источник

I

Ioann_V in pro.graphon (and gamedev)
не факт, если нормальный кейс из ветки ифов и циклов
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
disba1ancer
так я про си, где нету автоматического удаления
ну в сях нет деструкторов, так-то, есть всякие atexit-хендлеры, и просто клин-ап функции
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
ну и ООП нет в чистом виде, только стракты-матрешки
источник

I

Ioann_V in pro.graphon (and gamedev)
я вот знаю, что Бионик Энджин и OurMachinary eng написаны на чистом Си
источник

I

Ioann_V in pro.graphon (and gamedev)
Эти движки принадлежат Автодеску
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
Ioann_V
я вот знаю, что Бионик Энджин и OurMachinary eng написаны на чистом Си
круто :3
источник

d

disba1ancer in pro.graphon (and gamedev)
Pavel Kazakov
ну в сях нет деструкторов, так-то, есть всякие atexit-хендлеры, и просто клин-ап функции
в самом языке нет, но ты можешь определить объекты и конструкторы/деструкторы к ним в виде функций
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
ну так это просто функции, у них нет специальный свойств из плюсов, типа как у конструктора нет возвращаемого значения
источник

I

Ioann_V in pro.graphon (and gamedev)
Еще Си мне чем нравится, в контексте GameDev, это тем, что там легко сериализовать данные, и вообще говоря, паттерн ECS - это не про наследование, а про композицию, что есть один из граалей Си.
источник

d

disba1ancer in pro.graphon (and gamedev)
Pavel Kazakov
ну так это просто функции, у них нет специальный свойств из плюсов, типа как у конструктора нет возвращаемого значения
да, но если вызвал одну, то после завершения алгоритма, нужно выполнить и вторую
источник

A

Andrei Konshyn in pro.graphon (and gamedev)
Ioann_V
я вот знаю, что Бионик Энджин и OurMachinary eng написаны на чистом Си
про outMachinery - ошибаешься
у них только хедеры - чистые сишные интерфейсы. они писали в блоге, почему так. могу или ссылку скинуть или в двух словах рассказать
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
можно забить массив фанкшн-поинтеров и потом по всем пройтись и вызвать -- это будет RAII на коленке
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
disba1ancer
да, но если вызвал одну, то после завершения алгоритма, нужно выполнить и вторую
если у тебя алгоритм, то там будут инициализации каких-то объектов внутри -- хотя бы инта-счетчика, и вот ты не можешь его создание goto пропрыгать
источник

A

Andrei Konshyn in pro.graphon (and gamedev)
Andrei Konshyn
про outMachinery - ошибаешься
у них только хедеры - чистые сишные интерфейсы. они писали в блоге, почему так. могу или ссылку скинуть или в двух словах рассказать
источник

I

Ioann_V in pro.graphon (and gamedev)
А так, я плюсы хорошо знаю, и даже осиливаю их неплохо, но вот именно зная их - хочу более простого.
источник