C++ profile应用技巧分析

想必用过C++编程语言的开发人员会发现,这一应用广泛的计算机应用语言确实比较复杂,要想完全弄清其中的功能特点,是一个非常艰巨的任务。在这篇文章中我们先来了解一下C++ profiler的简单用法。

自从VC6以后,C++ profile功能便从Team Server Editions以外的版本中去掉了,如果没有此版本的VC,只能自己动手了。这是另一种使用Profile的方法,根据MSDN关于/callcap 的说明,编译WinCE应用程序时可以使用这个开关,试过后在Win32平台上也可以。这里需要注意的是在_CAP函数中,最好不修改寄存器,那样可能导致被调用的函数产生错误。

另外,如果直接把函数实现和调试的程序放在一个项目中编译,将会使CAP函数产生递归调用而导致堆栈溢出,处理方法是在一个静态库中不使用/callcap编译,然后再联接到调试的程序中。这种方式调试函数仍然不太方便,只能知道一个函数指针,无法知道函数名称。

相关推荐