У меня есть шаблонный класс sparseSet<T>
, это индексированный класс хранения. У меня есть шаблонная переменная для хранения вещей в sparseSet<T> components
. Я хотел бы иметь ряд функций, которые обращаются к данным в переменной components
, они будут получать указатели на n-й элемент в sparseSet
, вы можете предположить, что они все одного размера, например:
function1(foo*, bar*, baz*)
function2(bar*, baz*)
function3(foo*, baz*)
Вы можете предположить, что sparseSet<foo> components
sparseSet<bar> components
sparseSet<baz> components
все существуют, но их нельзя жестко запрограммировать. теперь мой вопрос в том, как я могу обобщить вызов функции таким образом, чтобы я мог вызвать функцию, скажем iterateOver()
, и передать ей подпись функции, и она будет получать доступ к данным из переменной components
, я думал об использовании переменных c шаблонных функций, но я не думаю, что это сработает, есть предложения? Любая помощь приветствуется!