在C++中,function函數是一個函數對象,可以用來存儲和調用任何可調用對象,包括函數、函數指針、lambda表達式等。通過function函數,可以將函數作為參數傳遞給其他函數,實現函數的回調功能。function函數的使用方法如下:
包含頭文件:#include
定義function對象:可以通過function類模板來定義function對象,指定其參數類型和返回類型。例如:
std::function<int(int, int)> add = [](int a, int b) { return a + b; };
int result = add(3, 4); // result為7
std::function<void()> func;
if (func.empty()) {
std::cout << "function對象為空" << std::endl;
}
std::function<int(int, int)> add2;
add2 = add; // 將add對象賦值給add2對象
add2.swap(add); // 交換add和add2對象
總而言之,function函數提供了一種靈活的方式來處理函數對象,可以方便地實現函數的傳遞和回調。