Wpis z mikrobloga

Hej, takie szybkie pytanko ;)
Kombinuję w jaki sposób mogę użyć funktora aby policzyć ilość liter w stringu. Utknąłem w takim momencie. Ktoś pomoże, rozjaśni czy dobrze kombinuję?

Wiem, że ostatni argument count_if powinien być wywołany inaczej to na pewno.
W jaki sposób ma być wywołany, i czy jako argument ma może przyjmować zadeklarowany wskaźnik do iteratora?

https://pastebin.com/c67RcKwN
#naukaprogramowania #cpp #glupiepytaniametoksyfenidyny
  • 5
@JakTamCoTam: ahh. skasowal mi się komentarz. bo nie śpię ;)

1. Do lambd jeszcze nie doszedłem.
2. Wiem, że można to zrobić w ten sposób ze zwykłym predykatem.

int temp = count_if(nowy.begin(), nowy.end(), isalpha);
3. czy tam tak:

int counter(std::string &s) {

return count_if(s.begin(), s.end(), static_cast(std::isalpha));
}

4. tylko policzyć ile liter, ale bardziej zrobić w ten sposób. aby ze struktury ischar, po przeciążeniu operatora() móc ten obiekt podać jako ostatni
@Metoksyfenidyna9: Stwórz obiekt tej struktury ischar i ten obiekt podaj jako ostatni argument w count_if. Poza tym w tych wszystkich funkcjach z argument powinno się rzutować na unsigned char żeby uniknąć UB.