오브젝트 1에 부스트 시그널 2 신호가 있고 오브젝트 2에 부스트 시그널 2 신호가 있습니다.
오브젝트 2가 파괴되면 신호가 끊어지지 않고 신호가 끊어지면 신호가 끊어집니다.
이 문제를 해결하기 위해 객체 2에 scoped_connection
을 유지합니다. 이제 객체 1이 신호로 소멸되고 객체 2가 소멸되면 문제가 발생합니다.
문제가 발생합니까? 일반적인 문제를 해결할 더 좋은 방법이 있습니까? (오브젝트 1 -> 오브젝트 2와의 연결이있어 오브젝트 2가 소멸 될 때 연결이 끊어집니다). 문제를 보여줍니다부스트 시그널 2 파괴 안전
코드입니다 :
auto sig = new signal<void()>();
auto conn = new scoped_connection(sig.connect(&some_function));
delete sig;
delete conn;
이 안전한가요?