libsigc+++
libsigc++안정적 해제 | 3.0.3 / 2020년 3월 25일;[1] 전 |
---|---|
릴리스 미리 보기 | 2.99.12 / 2018년 10월 30일;[1] 전 |
리포지토리 | |
기록 위치 | C++ |
유형 | 도서관이나 틀 |
웹사이트 | libsigcplusplus![]() |
libsigc++는 콜백 유형을 위한 C++ 라이브러리다.
libsigc++는 추상 인터페이스와 일반 프로그래밍에 사용하기 위한 콜백 시스템을 구현한다.libsigc++는 C++ 템플릿 메타프로그래밍을 사용하여 구현된 신호와 슬롯 개념을 가장 먼저 구현한 것 중 하나이다.1997년 gtkmm 프로젝트의 일환으로 시작된 Qt. libsigc++의 신호와 슬롯 구현에서 발견된 것과 같은 메타 컴파일러의 사용에 대한 대안으로 만들어졌으며 이후 독립형 라이브러리로 다시 작성되었다.각 신호에는 콜백과 관련된 인수 및 인수 유형을 지정하는 특정 함수 프로파일이 있다.그런 다음 신호에 바인딩될 수 있는 함수 객체(기능자)를 생성하기 위해 템플릿 호출을 사용하여 함수와 방법을 감싼다.각 신호는 복수의 functor에 연결될 수 있으므로, 메시지를 복수의 익명의 수신기 객체에 배포할 수 있는 관찰자 패턴을 생성한다.참조 카운트 기반 객체 수명 추적을 사용하여 객체가 삭제될 때 신호에서 functors를 분리했다.컴파일 시간 형식에 허용된 템플릿 사용 연결 검증이 엄격한 컴파일 시간 검사를 추가하기 위해서는 필요한 신호 패턴과 일치하도록 펑터 콜백 프로필을 변환하는 템플릿 유형 캐스팅 어댑터가 추가되어야 했다.
libsigc+++는 관찰자 패턴을 구현하는 데 필요한 물체의 추적까지 C+++ 표준 라이브러리 functors의 자연스러운 확장이었다.그것은 부스트 C++ 라이브러리에 사용되는 신호 구현을 포함한 여러 C++ 템플릿 기반 신호 및 슬롯 구현에 영감을 주었다.
libsigc++는 GNU 소일반공용면허(LGPL)에 따라 무료 소프트웨어로 출시된다.
참조
- ^ a b "Releases - libsigcplusplus/libsigcplusplus". Retrieved 25 March 2020 – via GitHub.
외부 링크