首页 > 解决方案 > gdb“找不到方法...”(来自库的方法)

问题描述

-g我只用标志编译了我的代码。我的代码中有这个确切的表达式:

auto b = some_func(row[0].as<MyType>());

但是当我想检查部分表达式时:

(gdb) print row[0].as<MyType>()
Couldn't find method pqxx::field::as<MyType>

我得到这个错误。即使我在调试器中运行它时在同一个代码块中,整个表达式也是如此。

(该方法所在的库是 C++ PostgreSQL libpqxx.so)(gdb 8.3)


这不是唯一不起作用的事情。当我做:

(gdb) print my_unordered_map.find(MyType(1))
A syntax error in expression, near `1))'.

或者:

(gdb) print my_unordered_map.find(my_lambda(row[0]))
Invalid data type for function to be called.

(也只是my_lambda(row[0]))即使这是编译的。

标签: c++gdb

解决方案


推荐阅读