在使用
尽管使用
其他有经验的C++开发者如何记录对
std::function
声明类型时,我发现无法为模板参数分配参数名称。例如,我发现这种普通函数指针类型声明:typedef void (*ArcCallback)(
void *object,
double x_start, double y_start,
double x_finish, double y_finish,
double x_center, double y_center,
bool counterclockwise);
要比这个std::function
类型声明更易读:
typedef std::function<void(
void *,
double, double,
double, double,
double, double,
bool)> ArcCallback;
尽管使用
std::function
很灵活(例如,可以分配lambda或std::bind
调用的结果),但我错过了参数名称。当然,我可以在 std::function
声明中添加注释,但结果很笨拙。更重要的是,我认为IDE不会使用这些注释来提供参数提示。其他有经验的C++开发者如何记录对
std::function
模板参数的目的?是否有已广泛使用此类类型的库所设置的先例?