Qt Framework에서 enum을 메타 객체 시스템에 통합하기 위해 사용한다.
Q_ENUM과 Q_ENUM_NS의 큰 차이는
- class 내부에 정의된 enum class 를 등록할 때 사용
- namespace 내부에 정의된 enum class를 등록할 때 사용.
참고로 Qt 5 이전에는 Q_ENUMS라는 매크로를 사용하였는데,
Qt5.5 부터 사용이 권장되지 않으며 Q_ENUM을 대신 사용하라고 한다.
이전의 Q_ENUM과 Q_ENUMS의 차이는
enum class value를 문자열로 변환할 수 있냐 없냐의 차이이기 때문에.. 굳이 문자열로 전환되지 않는
Q_ENUMS를 사용할 필요가 없다.
'개발 > Qt' 카테고리의 다른 글
QStringLiteral (0) | 2024.07.02 |
---|