С++ тупо прикрутили по верх для куба и под него всё кривое и пользовательское, изначально куб был для С и все функции работы с регистрами и тд написаны на С.
ты знаешь что можно просто взять си код и скомпилировать с++ компилятором и в 99% случаев оно скомпилируется, потому что си - это, грубо говоря, подмножество с++, если не вникать в некоторые тонкости