Здравствуйте, achp, Вы писали:
А>>обратное преобразование требует целый reinterpret_cast<> ?
A>Э… А можно конкретный пример такого reinterpret_cast?
А в чём проблема?
template<typename T> struct RefOf{ typedef T& Type; };
template<int N, typename T> typename RefOf<T[N]>::Type ptrToArray( T* ptr )
{
return *reinterpret_cast<T(*)[N]>( ptr );
}
ну и пример использования:
void foo()
{
int a[5];
int* p = a;
int (&r)[5] = a;
int (&r1)[4] = ptrToArray<4>( p + 1 );
}
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском