0
C++ InterlockedIncrement 기능을 32 비트 및 64 비트 아키텍처 모두에 사용하는 가장 좋은 방법은 무엇입니까? (분리 된 기능이 있습니다)아키텍처 - 일반 32/64 비트 용 InterlockedIncrement
#if _W64
전 처리기 명령을 사용하는 것보다 나은 방법이 있습니까?
C++ InterlockedIncrement 기능을 32 비트 및 64 비트 아키텍처 모두에 사용하는 가장 좋은 방법은 무엇입니까? (분리 된 기능이 있습니다)아키텍처 - 일반 32/64 비트 용 InterlockedIncrement
#if _W64
전 처리기 명령을 사용하는 것보다 나은 방법이 있습니까?
가장 쉬운 솔루션, 당신은 C++을 사용하고 있기 때문에 :
inline LONGLONG __cdecl InterlockedIncrement(LONGLONG volatile *Addend)
{
return InterlockedIncrement64(Addend);
);
지금 당신은 무조건 32 및 64 비트 중 32 비트 또는 64 개 비트 변수에
InterlockedIncrement
를 호출 할 수 있습니다 빌드.
설명이 있습니다. – Reflection
C++ 11 자 원 유형을 사용할 수 있습니다. –
질문해야 할 질문은 32 비트 및 64 비트 버전에 다른 정수 유형을 사용하는 이유입니다. 아마도 당신이 원하는 변수의 선언을 보여줄 수 있습니다. –
C 사전 프로세서 붙여 넣기 연산자를 사용하여 시스템의 올바른 이름을 확인하는 매크로를 작성할 수 있습니다. – RichardPlunkett