LINUX.ORG.RU

История изменений

Исправление MOPKOBKA, (текущая версия) :

Покажи мне как это записать в C++ без шаблонов и void *.

Я не пишу на C/C++, но если бы писал...

Что бы шаблоны не раздували код, я бы сделал char value[], и функции которые принимают размер хранимого элемента что бы правильно выделить RBNode.

И лишь поверх этих функций я бы добавил шаблонную обвязку

void RBNode<T>::RandomFunction(T *val) {
  RBNode::RandomFunction(&val, sizeof(T));
}

Чисто для авто-проверки типа и сокращения писанины.

Исходная версия MOPKOBKA, :

Покажи мне как это записать в C++ без шаблонов и void *.

Я не пишу на C/C++, но если бы писал...

Что бы шаблоны не раздували код, я бы сделал char value[], и функции которые принимают размер хранимого элемента что бы правильно выделить RBNode.

И лишь поверх этих функций я бы добавил

RBNode<T>::RandomFunction(T *val) {
  RBNode::RandomFunction(&val, sizeof(T));
}