Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฟังก์ชันใน C++


functors เป็นวัตถุฟังก์ชั่นใน C ++ functor อนุญาตให้วัตถุอินสแตนซ์ของคลาสบางคลาสถูกเรียกราวกับว่ามันเป็นฟังก์ชันธรรมดา ให้เราพิจารณาฟังก์ชันที่รับหนึ่งอาร์กิวเมนต์ เราสามารถใช้ฟังก์ชันนี้เป็นออบเจกต์ฟังก์ชันเพื่อทำงานบางอย่างกับชุดข้อมูลได้

โค้ดตัวอย่าง

#include <iostream>
#include <algorithm>
using namespace std;
int square(int x) {
   return x*x; //return square of x
}
int main() {
   int data[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
   transform(data, data+10, data, square);
   for (int i = 0; i<10; i++)
      cout << data[i] << endl;
}

ผลลัพธ์

0
1
4
9
16
25
36
49
64
81