방금 Qt로 시작했고 내 생각에 매우 유용한/유용한 QMetaObject를 발견했습니다.Qt/C++의 리플렉션
이제 Qt/표준 C++ 또는 다른 C++ 라이브러리를 사용하여 함수 이름이나 현재 스택을 호출하는 것과 같은 정보를 얻을 수 있는지 궁금합니다.
디버깅/로깅 목적으로 필요합니다.
예를 들어 MethodBase.GetCurrentMethod()
을 호출하여 현재 방법을 얻을 수 있습니다. 이 같은 것이 정말 편리 할 것입니다.
나는 __func__' 함수 이름을 얻을 수있는 C99 표준 인'것을 알아 냈다. '__FUNCTION__'도 대부분의 컴파일러에서 작동합니다. '__PRETTY_FUNCTION__'과'Q_FUNC_INFO'는 모두 Qt와 함께 작동하고 함수 시그니처를 반환하지만, 모든 OS에서 그럴 수는 없습니다. – Karsten