一般version都是由4个部分表示,简单的可以用一个4个byte的struct来表示:
struct Version32
{
union
{
struct
{
BYTE v0;
BYTE v1;
BYTE v2;
BYTE v3;
};
DWORD ver; //union结合这个DWORD使程序变的异常清晰
};
Version32();
//根据verInfo来填充此结构
Version32& Fill(const VS_FIEXEDFILEINO& verInfo);
Version32& Fill();
};
//简单输出流
std:ostream& operator<<(std::ostream& os, Verison32 v32);
匿名struct:
例如在这样一个结构中:
struct ver
{
struct //注意,没有名字
{
BYTE b0;
BYTE b1;
BYTE b2;
BYTE b3;
};
};
ver v;
v.b0 = 1; //直接调用就行了,这既是匿名struct
v.b0 = 2;
v.b0 = 3;
v.b0 = 4;