C++ 文件函数的高级用法包括以下几种:
namespace myNamespace {
void myFunction() {
// 函数实现
}
}
void myFunction(int a) {
// 函数实现
}
void myFunction(double a) {
// 函数实现
}
template <typename T>
T add(T a, T b) {
return a + b;
}
void myFunction(std::unique_ptr<MyClass>&& obj) {
// 函数实现
}
auto myLambda = [](int a, int b) {
return a + b;
};
auto myBind = std::bind(myFunction, std::placeholders::_1, 42);
std::function<int(int, int)> myHigherOrderFunction(std::function<int(int)> func) {
return func;
}
int (*myFunctionPointer)(int, int) = &myFunction;
struct MyFunctor {
int operator()(int a, int b) const {
return a + b;
}
};
auto myArrowFunction = [](int a, int b) -> int {
return a + b;
};