我想用Eclipsedebugging一个C ++应用程序。
使用的程序版本:
我的意图是理解stream内发生了什么,并了解stringbuf类的内部:
#include <iostream> #include <stdio.h> #include <sstream> int main() { printf("Hello C world!\n"); std::cout << "Hello C++ world!" << std::endl; std::ostringstream my_ostringstream; std::stringbuf* my_p_stringbuf; my_p_stringbuf = my_ostringstream.rdbuf(); std::cout << my_p_stringbuf->sbumpc(); }
我所尝试的是进入 main中的每一行代码。
(令我惊讶的)结果是,唯一的日食实际上试图进入到printf的调用,它发出警告:无法find源文件“/build/glibc-Y1PEyp/glibc-2.19/libio /ioputs.c“这对我来说很好,因为eclipse和gdb告诉我他们正在寻找一个文件,而且它丢失了。
但是,进入任何其他行不起作用, 蚀刻所有其他调用的步骤没有发出警告 。
我怎么能进入调用std :: cout operator <<和其他函数调用?