Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zliczanie elementów o tej samej wartości

Ostatnio zmodyfikowano 2013-12-04 15:14
Autor Wiadomość
Lotherad
Temat założony przez niniejszego użytkownika
Zliczanie elementów o tej samej wartości
» 2013-12-02 23:05:42
Witam.

Mam vector wypełniony kilkoma stringami, niektóre z nich się powtarzają. Teraz pytanie brzmi jak zliczyć ile razy powtarza się dana fraza?
C/C++
class liczba
{
public:
    int powtorzenia;
};

(...)

class liczba Jeden;
class liczba Piec;
class liczba Siedem;

vector < string > vec;

vec.push_back( "Jeden" );
vec.push_back( "Piec" );
vec.push_back( "Siedem" );
vec.push_back( "Jeden" );
vec.push_back( "Jeden" );
I teraz chciałbym zliczyć ile razy w tym vectorze występuje słowo "Jeden", a wynik zapisywać w klasie jedynki, w zmiennej "powtorzenia". Do każdego stringa była by inna nazwa klasy. Np. do piątki "Piec", a do siódemki "Siedem".

Z góry dziękuję za pomoc.
P-98139
Monika90
» 2013-12-02 23:13:32
std::count( v.begin(), v.end(), "Jeden" );
P-98140
Lotherad
Temat założony przez niniejszego użytkownika
» 2013-12-02 23:28:52
Gdy dołączam bibliotekę "algorithm" kompilator daje błąd:

error: 'long unsigned int exp' redeclared as different kind of symbol

W linijce gdzie są inicjowane dwie zmienne unsigned long.
P-98141
Monika90
» 2013-12-03 12:29:28
Prawdopodobnie w używanej przez Ciebie implementacji <algorithm> dołącza <cmath> i stąd konflikt z funkcją exp.

Możesz zmienć nazwę exp na jakąś inną, albo umieścić ją w przestrzni nazw, albo po prostu nie używać zmiennych globalnych.
P-98156
Lotherad
Temat założony przez niniejszego użytkownika
» 2013-12-04 15:14:56
Oczywiście zmiana nazw pomogła, dziękuję.
P-98264
« 1 »
  Strona 1 z 1