[C++11] makró helyett STL-szerű algoritmus

 ( dap | 2017. október 22., vasárnap - 16:18 )

Egy commitem beakadt egy review-ban, mert makrót használok benne. Esetleg valaki tudna segíteni, hogy "STL-like" algoritmus legyen a makro helyett ahogy a maintainer kéri?

https://gerrit.vesnicky.cesnet.cz/r/#/c/901/2/src/Imap/Model/ThreadingMsgListModel.cpp

Ez nekem már túl magas, nem vagyok rutinos C++ -os, csak egy pár hozzájárulás erejéig szívtam fel magam valamennyire a nyelvből. Viszont a patch amúgy jó, szeretnék a juzerek ezt a feature-t, kár lenne érte.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Ilyen sok soros makrót nem láttam még, bár C++ helyett C#-ban utazom. Az STL like szerintem azt jelenti Jan Kindrát-nál, hogy sima függvényt csinálj makró helyett, mert túl sok sorból áll. Működik, gyors, de nem elegáns. Valszeg a többsoros makró olvashatatlansága miatt (lásd sorvég).

+1 Funkcioba ki, aztan legfeljebb inline neki.

Ez a makro tényleg ritka ocsmány és érthető, hogy így nem engedi be.

A template alatt azt érti, hogy definiálj egy template függvényt aminek egyik argumentuma egy másik függvény, ami azt csinálja ami az if ágban van. A másik lehetőség a függvény pointer. De ide valószínűleg inline kéne. (Akár bele is írhatod kétszer az is jobb mint ez)
if(!akármi) return true; helyett return !akármi