即时通讯使用:我应该每次使用全局变量还是调用函数? C++
bool GetOS(LPTSTR pszOS)
{
OSVERSIONINFOEX osve;
BOOL bOsVersionInfoEx;
ZeroMemory(&osve, sizeof(OSVERSIONINFOEX));
osve.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
if(!(bOsVersionInfoEx = GetVersionEx ((OSVERSIONINFO *) &osve)))
return false;
TCHAR buf[80];
StringCchPrintf(buf, 80, TEXT("%u.%u.%u.%u"),
osve.dwPlatformId,
osve.dwMajorVersion,
osve.dwMinorVersion,
osve.dwBuildNumber);
StringCchCat(pszOS, BUFSIZE, buf);
return true;
}
获得Windows版本,我打算用pszOS每隔几分钟,
我应该使用pszOS作为一个全局变量或致电GetOS () 每次?
从性能的角度来看,最好的选择是什么。
很难说你的函数GetOS是干什么的,什么是调用呼叫不变的。当每隔几分钟运行一次以保证一个全局变量时,它将不得不花费很长时间执行,但我们无法从所提供的信息中知道这一点。 – msw 2010-05-22 02:22:51