등호 앞의 세로 막대는 무엇을 의미합니까? 아래의 코드와 같은C++ 세로 막대?
는UINT createDeviceFlags = 0;
#ifdef _DEBUG
createDeviceFlags |= D3D11_CREATE_DEVICE_DEBUG;
#endif
등호 앞의 세로 막대는 무엇을 의미합니까? 아래의 코드와 같은C++ 세로 막대?
는UINT createDeviceFlags = 0;
#ifdef _DEBUG
createDeviceFlags |= D3D11_CREATE_DEVICE_DEBUG;
#endif
이
createDeviceFlags |= D3D11_CREATE_DEVICE_DEBUG;
화합물 할당 경우 : +
, -
, /
및 *
연산자로서
은 등호 전에 |
연산자를 배치하면의 축약 버전 인 연산자이며 실제로는
createDeviceFlags = createDeviceFlags | D3D11_CREATE_DEVICE_DEBUG;
과 같습니다.
여기서 operator | 비트 연산자 OR을 의미합니다. 그것은이 두 피연산자 연산 OR의 모든 비트에 적용됩니다. 일반적으로 정수형 객체의 일부 비트 또는 플래그를 설정하는 데 사용됩니다.
비트 단위 OR 연산자의 동작은이 플래그가 켜져있다 D3D11_CREATE_DEVICE_DEBUG 플래그의 비트를 설정하는 대응 변수 createDeviceFlags 비트에
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1
따라서이 명령 세트를 수행한다.
|
오퍼레이터는 bitwise OR operator이다.
createDeviceFlags = createDeviceFlags | D3D11_CREATE_DEVICE_DEBUG;
SO가있는 사람들 중 일부는 대답을하지 않아도 안된다고 생각하는 질문에 답을 표시합니다. – PlasmaHH
나는 어떤 사람들 (나 아닌)이 당신이 설명하지 않았기 때문에 downvoted라고 생각한다. 평균. –
@VladfromMoscow : 아마 맞을 것입니다. 나는 그것이 등호 앞에 놓이게 될 것을 의미하는 것에 대한 질문에 사로 잡혔다 고 생각한다. 내 대답을 업데이트했습니다. –