efl 프로젝트에서 많이 쓰이는 type definition된 자료형을 소개합니다.
- Eina_Bool
boolean을 위한 자료형
실제는
typedef unsigned char Eina_Bool;
으로 type definition 되어 있다.
EFL 코드중에 종종
Eina_Bool var = !!value
이와 같은 코드가 보이는데, 참과 거짓 이외에 다른 숫자가 들어가는 것을 방지하기 위해(본래 unsigned char 이므로) 그러는 것으로 보인다.
이외에, EINA_FALSE, EINA_TRUE 매크로가 정의되어 있다.
#define EINA_FALSE ((Eina_Bool)0)
#define EINA_TRUE ((Eina_Bool)1)
일부 구조체 에서는 아래와 같이 bitfield를 이용해서 선언하는데, 어떤 구조체에서는 bitfield를 사용하지 않는다. 통일성이 없음..
Eina_Bool bounce_x_hold : 1;
Eina_Bool bounce_y_hold : 1;
Eina_Bool dragged_began : 1;
댓글 없음:
댓글 쓰기