2011-08-29 3 views
0

루비에는 set_trace_function이라는 Kernel 객체에 대한 메소드가 있습니다. 메소드가 호출되거나 리턴 될 때, 또는 예외가 발생할 때, 주어진 proc 오브젝트를 실행할 것이다. 이것을 사용하여 자신 만의 로거를 만들고 프로그램에 대한 흥미로운 것을 배울 수 있습니다. & ...루비의 set_trace_function과 비슷한 C++의 기능이 있나요?

C++ 또는 비슷한 기능이 있습니까? 또한이 시설은 일반적으로 무엇이라고 불리 죠?

감사합니다.

z.

+0

동안 루비 : 당신이 대신 찾고있는 것은 로깅 또는 디버깅 도우미 프레임 워크 인 경우

는, 당신은 (당신이 계측 구글 두 번째 대답은 사실이다)이 부분을 읽어보십시오 호출은 VM의 함수 (또는 VM이 ​​아니라면 Ruby가 사용하는 것)를 통해 라우트되지만, C++에서도 마찬가지입니다. –

답변

1

마찬가지로 Seth는 이러한 종류의 내용을 언어에서 직접 사용할 수는 없다고 말했습니다. C++에서 비슷한 일을하기 위해서는 컴파일하는 동안 자신의 코드에 이런 종류의 "모니터링 코드"를 주입해야합니다.

C 또는 C++에서 이것은 종종 계측 또는 프로파일이라고합니다.
자세한 내용을 보려면 google it을 제안하십시오. 모든
Instrumentation (diagnostic) library for C++

관련 문제