i'm sorry writing on mobile. poor internet connection, so gotta b quick.
usually, usually, usually: you use C structs as a bricks to your C++. So, with that in mind ;)
''' struct { uint8 data[1]; bleh; meh; }
templatet struct { static consepr size_of_array = std::array_size(S); typedef what_type_is_daya decltye(S::data); bleh( whattypeisdata *pidzata); meh. ( whattypeisdata *pIDatA); '''
again sorry for syntax, it is really hard to type on a phone.