URL: https://linuxfr.org/users/serge_ss_paille/journaux/toujours-plus-proche-du-python-avec-c Title: Toujours plus proche du Python avec C++ Authors: serge_sans_paille Date: 2020年12月22日T10:49:05+01:00 License: CC By-SA Tags: c++14 Score: 20 Demat'iNal, Le langage Python offre une sacré flexibilité dans la gestion des arguments: arguments positionnels, nommés, passage par mot-clef, c'est un peu la foire à la saucisse des paramètres. J'aime particulièrement le passage d'arguments nommés, ça documente bien le site d'appel, et la syntaxe Python est assez flexible. Mais peut-on en faire autant avec C++ ? Tu te doutes bien que oui, sinon l'intérêt de ce journal serait limité :-) La syntaxe supportée : ```c++ auto res = my_function_call(pos0, pos1, "keyword0"_kw=value0, "keyword1"_kw=value1) ``` Et au niveau de la fonction appelée, ça ressemble à ```c++ template auto my_function_call(int pos0, int pos1, KWArgs&&... kwargs) { auto Args = params14::parse(std::forward(kwargs)...); auto kw0 = Args.get("keyword0"_kw); auto kw2 = Args.get("keyword2"_kw, nullptr); ... } ``` Plus de précision sur cette belle magie dans le ``README`` du dépôt> https://github.com/serge-sans-paille/params14 La code est sous licence Apache-2.0, c'est un petit fichier d'en-tête de moins de 200 lignes de C++14, commentaires compris ;-) l'API gagnerait certainement à être un peu étoffée, des idées ? *Nedeleg laouen d’hol lennerien!*

AltStyle によって変換されたページ (->オリジナル) /