所以,根据GDB,我有一个带有原型的函数:
{std::string (std::string)} 0x56027729e545
<function(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)>
我想使用 GDB 将一个字符串传递给它。为了尝试这个,我使用以下 GDB 命令在堆上创建一个新字符串。
set $mystr = (std::string*) malloc(sizeof(std::string))
call $mystr->basic_string()
call $mystr->assign("foobar")
call (std::string) function(*$mystr)
在最后一行,我收到错误
Couldn't find method std::string::std::string.
有任何想法吗?
不幸的是,我无法修改代码来解决这个问题。