我正在运行libgit2 v0.23.0。我正在调用方法git_index_add_all,它采用以下参数:
我无法了解如何创建上一个void *payload parameter
我的代码是:
git_index *idx = NULL;
git_index_matched_path_cb matched_cb = NULL;
int error = 0;
error = git_index_open(&idx, "repofolder/.git/index");
char *paths[] = {"repofolder/*"};
git_strarray arr = {paths, 1};
error = git_index_add_all(idx, &arr, GIT_INDEX_ADD_DEFAULT,matched_cb, ?);
任何人都可以建议我,创建或获取有效负载类型对象的方法应该是什么?
答案 0 :(得分:2)
payload
参数是在C中创建闭包的标准方法。您的回调将接收您作为其payload
参数放入的任何指针。它应该是指向回调执行其工作所需的任何变量/结构的指针。
如果您不需要任何数据,请传入NULL
。