我试图从调用表达式中获取参数的类型,以便稍后在重写器中使用该类型。 这就是我所拥有的:
const clang::Expr *const *FuncArgs = CallExpress.getArgs();
std::string QTString = FuncArgs[0]->getType().getBaseTypeIdentifier()->getName().str();
当我运行它时,它编译并链接正常但是当我运行它时我得到一个段故障。
当我调用getName
时,会发生这种分段错误。
我的问题是第一个,做错了什么?如果我正确地解决这个问题。还有其他方法从callExpr中的参数获取QT吗?
答案 0 :(得分:0)
我终于找到了答案。您可以致电getType
,然后拨打getAsString
,将类型设为字符串,前提是您已从原始问题中获得FuncArgs
。