请参阅:放置新问题
简单的问题,这会解决对齐问题吗?
union
{
char real_array[sizeof(T)*size];
T fake_array[size];
};
Run Code Online (Sandbox Code Playgroud)
是的,那应该解决对齐问题.虽然没有必要制作fake_array阵列.只有一个类型的成员T就足够了.
这实际上是一种相当广泛使用的技巧,用于强制某些阵列上的特定对齐.
作为一个迂腐的旁注:匿名联合只存在于C++中,但不存在于C中.