Herb Sutter schreef in C++ users journal dit :
http://www.cuj.com/documents/s=8464/cujcexp0308sutter/
artikel.
Mijn indruk is dat deze library die std::function gaat heten, C++ sterke overeenkomsten gaat geven met een functionele programmeertaal. ( Alhoewel deze lib geen uitbreidingen aan de taal C++ zelf nodig heeft ! )
Maw, de C++'ers onder ons kunnen in de toekomst ook functies chainen.
Mbv deze library is het mogelijk om functies als parameter te gebruiken, en als returntype. Itt tot normale functiepointers echter is het niet nodig om een exacte match te hebben mbt het functieprototype.
Dit :
Zou je dus kunnen binden aan een globale functie die een string neemt als parameter en een string returned, maar ook een memberfunctie van een classe komt in aanmerking, en zelfs een (member)functie die een char * als parameter heeft en een char * retourneert.
Natuurlijk heeft een fp taal meer eigenschappen dan deze, maar ik ben benieuwd of fp aanhangers dit zien als een goede stap ? Of is het geen oplossing voor wat de fp'ers willen?
En de mensen die voornamelijk de C in C++ gebruiken, en amper de ++, wat vinden die ervan ? Is het in de praktijk bruikbaar, of gebruiken we toch liever een functie die void pointers gebruikt ?
http://www.cuj.com/documents/s=8464/cujcexp0308sutter/
artikel.
Mijn indruk is dat deze library die std::function gaat heten, C++ sterke overeenkomsten gaat geven met een functionele programmeertaal. ( Alhoewel deze lib geen uitbreidingen aan de taal C++ zelf nodig heeft ! )
Maw, de C++'ers onder ons kunnen in de toekomst ook functies chainen.
Mbv deze library is het mogelijk om functies als parameter te gebruiken, en als returntype. Itt tot normale functiepointers echter is het niet nodig om een exacte match te hebben mbt het functieprototype.
Dit :
C++:
1
2
| std::function < std::string ( std::string ) > stringfunc; |
Zou je dus kunnen binden aan een globale functie die een string neemt als parameter en een string returned, maar ook een memberfunctie van een classe komt in aanmerking, en zelfs een (member)functie die een char * als parameter heeft en een char * retourneert.
Natuurlijk heeft een fp taal meer eigenschappen dan deze, maar ik ben benieuwd of fp aanhangers dit zien als een goede stap ? Of is het geen oplossing voor wat de fp'ers willen?
En de mensen die voornamelijk de C in C++ gebruiken, en amper de ++, wat vinden die ervan ? Is het in de praktijk bruikbaar, of gebruiken we toch liever een functie die void pointers gebruikt ?
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.