Visual Studio에서 \ W4 경고 수준을 사용하고 있으며 Windows 프로그램을 작성하고 있습니다.UNREFERENCED_PARAMETER 매크로 사용
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
이러한 모든 매개 변수는 내 응용 프로그램에서 사용되지 않으므로 컴파일시 경고가 표시됩니다.
나는이이 개 다루는 방법이 있습니다 알고 사용
- 언급 매개 변수
HINSTANCE /*hInstance*/
... 가
UNREFERENCED_PARAMETER
매크로INT WINAPI의 WinMain (HINSTANCE HINSTANCE, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { UNREFERENCED_PARAMETER (hInstance); UNREFERENCED_PARAMETER (hPrevInstance); UNREFERENCED_PARAMETER (lpCmdLine); UNREFERENCED_PARAMETER (nCmdShow);
올바른 것은 무엇입니까? 어느 것이 더 안전합니까? 매크로 사용에 문제가 있습니까?
둘 다 모두 권한이며, 둘 다 금고입니다. 맛의 문제입니다. 당신은 무엇을 선호합니까? – Gonmator
@Gonmator는 매크로를 사용할 때 속도가 감소합니까? – LppEdd
아니요, 최적화가 활성화 된 경우 (출시)가 아닙니다. 'UNREFERENCED_PARAMETER (p)'매크로는'p = p;'로 정의됩니다.이 코드는 경고를 피하지만 기본적인 최적화로는 버려집니다. 디버그 빌드에서는 매크로가 코드를 생성하는지 잘 모르겠습니다. 하지만 디버그 성능에 대해서는 걱정하지 않아도됩니다. – Gonmator