You can make a bundletemplate:
template <typename T>
struct bundle {
T a;
T b;
T c;
};
void func(const bundle<int>& startBundle, const bundle<int>& endBundle);
Or you can use std::array:
using IntBundle = std::array<int, 3>;
using DoubleBundle = std::array<double, 3>;
void func(const IntBundle& startBundle, const IntBundle& endBundle);
, std::tuple:
using IntBundle = std::tuple<int,int,int>;
using OtherBundle = std::tuple<float,int,int>;
bundle :
template <typename A, typename B, typename C>
struct bundle {
A a;
B b;
C c;
};