python - 为什么 Libclang 无法获取头文件中定义的函数的定义?
问题描述
我正在使用 LibClang 列出所有函数调用及其相应的定义。以下是执行此操作的 python 脚本:
def traverse(node):
if node.kind == CALL_EXPR:
print(node.displayname, node.get_defintion())
for c in node.get_children():
traverse(c)
以下是我运行它的 cpp 代码:
#include<math.h>
int main()
{
float n = sqrt(3.0);
}
现在,对于引用 sqrt 的 CXcursor,我得到输出 sqrt , None
有人可以解释为什么它无法找到函数的定义吗?
解决方案
-I path/to/header/directory
使用参数运行您的 libclang 解析方法(无论您使用哪个)
推荐阅读
- python - 我在python中结合了pysimplegui和turtle
- flutter - dart freezed @Default 不会在 JsonKey 上应用 defaultValue
- python - decompress() 缺少 1 个必需的位置参数:'input_path'
- ruby-on-rails - 在字符串中交替大小写单词的更简单方法
- php - Laravel Blade 中的下拉默认选项错误
- c# - 正确使用 GitVersion 注入的版本元数据的方法
- python - 列表对象不可调用调用一个函数,其参数也是一个带有数组的函数
- wordpress - 使用 HAProxy 将 URL 重定向到 wordpress 服务器
- javascript - Vue.js (Nuxt) 返回 JSON 数据
- python - 为什么 cv2 read() 方法从网络摄像头提供裁剪图像?