|
제가 만든 델파이 콤포넌트를 빌더로 만들면서 '<<' 연산자를 썼더니 에러가 나던데요...
ControlStyle 에다가 썼는데....ㅡ.ㅡ;;
그래서 비트연산인줄 알았거든요...이상타.....
박지훈.임프 님이 쓰신 글 :
: 성의껏 답변을 해주신 로렌조님께는 조금 죄송합니다만.. 질문하신 ControlStyle 연산은 bit 연산이 아닙니다.
: 그러므로 C++로 바꿀 때 | 연산자로 치환할 수도 없습니다.
:
: 델파이의 오브젝트 파스칼 언어에는 집합(set) 개념이 있어서 여러개의 플래그 값들을 true, false로 하여
: 하나의 변수로 묶을 수 있습니다. 그런데 C++ 언어에는 이런 집합 개념을 문법적으로 지원하지는 않습니다.
: 그래서 대신 C++Builder에서는 집합을 C++ 템플릿을 이용하여 정의하게 됩니다.
: (템플릿에 대해서는 C++ 문법서를 참고하세요.)
:
: 어쨌거나.. 질문하신 코드를 C++ 소스로 바꾸려면 다음과 같이 해야 합니다.
: ControlStyle = ControlStyle << csAcceptsControls << csOpaque;
:
: 그럼 이만...
:
: 이단자 님이 쓰신 글 :
: : 안녕하세요.. 소스 분석하다 보니 이런것이 나오길래... 뭔가 해서 이렇게 질문합니다.
: :
: : ControlStyle := ControlStyle + [csAcceptsControls, csOpaque];
: :
: : [csAcceptsControls, csOpaque] 이것을 더한다는 건가요?
: : 이것이 씨일 경우 어떻게 표현 되는 건지 가르쳐 주세요
: : 제가 씨밖에 몰라서..
: :
: : 또 이런것이 있던데. 이게 뭔가요...
: : inherited
|