cpp:functors
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
cpp:functors [2020/05/31 20:34] – gthanos | cpp:functors [Unknown date] (current) – external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 5: | Line 5: | ||
===== Η συνάρτηση for_each ===== | ===== Η συνάρτηση for_each ===== | ||
- | Η συνάρτηση [[http:// | + | Η συνάρτηση [[http:// |
<code cpp> | <code cpp> | ||
template< | template< | ||
Line 17: | Line 17: | ||
</ | </ | ||
- | Παρακάτω δίνεται ένα παράδειγμα, | + | Παρακάτω δίνεται ένα παράδειγμα, |
<code cpp prefix_str.cpp> | <code cpp prefix_str.cpp> | ||
Line 49: | Line 49: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ==== Χρήση ενός function object αντί για συνάρτηση ==== | ||
Παρατηρήστε ότι ο κώδικας δουλεύει σωστά, με την υποσημείωση ότι κάθε φορά που θέλετε να αλλάξετε το prefix το οποίο προστίθεται στα περιεχόμενα του // | Παρατηρήστε ότι ο κώδικας δουλεύει σωστά, με την υποσημείωση ότι κάθε φορά που θέλετε να αλλάξετε το prefix το οποίο προστίθεται στα περιεχόμενα του // | ||
Line 54: | Line 56: | ||
- υπερφορτώνει τον τελεστή () (// | - υπερφορτώνει τον τελεστή () (// | ||
- | Ένα τέτοιο αντικείμενο ονομάζεται //function object ή functor//. Δείτε το παρακάτω παράδειγμα όπου ορίζουμε την κλάση // | + | Ένα τέτοιο αντικείμενο ονομάζεται //function object ή functor//. Δείτε το παρακάτω παράδειγμα όπου ορίζουμε την κλάση // |
<code cpp prefix_str_function_object.cpp> | <code cpp prefix_str_function_object.cpp> |
cpp/functors.1590957292.txt.gz · Last modified: 2020/05/31 19:34 (external edit)