2012-09-03 2 views
0

wx.Frame.SetWindowStyleFlag()를 사용하여 놀고 있었고 새 플래그를 추가하기 위해 '+'또는 '|'를 사용할 수 있다는 사실을 알았습니다. 제 질문은 이것이 다른 결과를 가져 오는 상황입니까? 그리고 2 사이의 성능 차이가 있습니까? wxPython 응용 프로그램 개발 요리 책에서 '|'을 사용하는 것으로 나타났습니다. '+'대신.wxPython 추가 플래그

+0

'|'는 비트 OR이므로 결과는 **와'+'모두 동일하지 않아야하지만 완전한 답을 얻을 수있는 충분한 정보를 찾을 수 없습니다. 당분간 당신은 모든 문서가 당신이 사용해야한다고 말하는 것이기 때문에 아마도'|'를 고수해야합니다. '01 | 01 == 10'인 동안 '00 | 11 == 00 + 11 == 11'이 아니라 '01 | 01 == 01'이라는 것에주의하십시오. 어쩌면 너 운이 좋을거야? – acattle

답변

0

항상 "|"을 사용하는 것이 좋습니다. 내가 사용한 다른 bitwise 연산자는 wxPython 데모의 AGW 라이브러리 데모에서만 볼 수 있습니다. 나는 속도의 차이가 있다고 생각한다. "|" 내가 정기적으로 사용하는 유일한 사람이고 Robin Dunn (wxPython의 제작자)이 항상 그것을 사용하고 있기 때문에 우리도 그렇게해야한다고 생각합니다.

+0

나는 본다. 플래그를 제거하기 위해 "-"를 사용하면 효과가있었습니다. 나는 "+"와 "-"를 사용하여 "|"대신 플래그를 추가하고 제거하는 것이 훨씬 덜 혼동 스럽다고 생각합니다. 및 "^". 그러나 제작자가 직접 "|" 그리고 "^"... 나는 그때 따라야 할 것 같아. 하하. –

+0

동의합니다. 그러나 "+"와 "-"는 비트 연산자가 아니므로이 경우에는 작동하지 않습니다. 나는 이것이 무엇보다 wxPython의 C++/SWIG 유산과 더 관련이 있다고 생각합니다. –