[C++11: 5.1.2/3]:
Tipe ekspresi lambda (yang juga merupakan tipe objek closure) adalah tipe kelas non-union unik dan tak bernama - disebut tipe closure - yang propertinya dijelaskan di bawah ini. Jenis kelas ini bukan agregat (8.5.1). Jenis closure dideklarasikan dalam lingkup blok terkecil, cakupan kelas, atau lingkup namespace yang berisi ekspresi lambda yang sesuai . [..]
Klausul tersebut melanjutkan ke daftar berbagai properti dari jenis ini. Berikut beberapa sorotan:
[C++11: 5.1.2/5]:
Jenis penutupan untuk lambda ekspresi memiliki publik inline
Operator fungsi panggilan (13.5.4) yang parameter dan jenis kembali dijelaskan oleh lambda ekspresi ‘s parameter-deklarasi-klausul dan trailing return-jenis masing-masing. [..]
[C++11: 5.1.2/6]:
Tipe closure untuk ekspresi lambda tanpa lambda-capture memiliki fungsi konversi const non-virtual publik non-eksplisit menjadi pointer ke fungsi yang memiliki parameter yang sama dan tipe kembalian sebagai operator panggilan fungsi tipe closure. Nilai yang dikembalikan oleh fungsi konversi ini harus menjadi alamat fungsi yang, ketika dipanggil, memiliki efek yang sama seperti memanggil operator panggilan fungsi tipe penutupan.
Konsekuensi dari bagian terakhir ini adalah, jika Anda menggunakan sebuah konversi, Anda akan dapat menetapkannya LAMBDA
ke pFptr
.