无法获取 callExpr 参数的类型

cant get the type of a callExpr argument

我正在尝试从调用表达式中获取参数类型,以便稍后在重写器中使用该类型。 这是我拥有的:

const clang::Expr *const *FuncArgs = CallExpress.getArgs();

std::string QTString = FuncArgs[0]->getType().getBaseTypeIdentifier()->getName().str();

当我 运行 这个时,它编译和链接很好但是当我 运行 它时我得到一个分段错误。 当我调用 getName 时,会发生此分段错误。 我的问题是,首先,我做错了什么?如果我要正确地解决这个问题。是否有其他方法从 callExpr 中的参数获取 QT?

我终于找到了答案。你可以只调用 getType 然后调用 getAsString 来获取字符串类型,因为你已经从原始问题中得到了 FuncArgs