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

dostep do pol struktury na podstawie zmiennej

Ostatnio zmodyfikowano 2015-07-21 12:23
Autor Wiadomość
tookie009
Temat założony przez niniejszego użytkownika
dostep do pol struktury na podstawie zmiennej
» 2015-07-20 12:07:41
czesc. Mam ini-plik ktory wyglada nastepujaco:


[a]
s=1
g=12

[b]
q=123
s=1

To jest tylko malutki przykladzik, caly plik jest duzo wiekszy. Teraz chcialbym wczytac ten caly plik do struktury. Struktura jest odzwierciedleniem tego pliku, czyli:

C/C++
struct a {
    int s;
    int g;
}

struct b {
    int q;
    int s;
}


Teraz korzystam z Simpleini. Tam mam funkcje ktorej podaje sie nazwe sekcji i nazwe parametru ktory ma byc wyczytany. Chcialbym ta funkcje uzyc w swojej funkcji, ktora to na podstawie nazwy sekcji i parametru zapisze wyczytana wartosc w polu struktury.

Jakies pomysly jak to zrobic? Wlasnie kombinuje z template, ale cos mi to nie za bardzo poki co wychodzi ;/

P-134955
JMII89
» 2015-07-20 13:19:24
http://stackoverflow.com/questions/6175502/how-to-parse-ini-file-with-boost
P-134960
pekfos
» 2015-07-20 13:49:54
Chcialbym ta funkcje uzyc w swojej funkcji, ktora to na podstawie nazwy sekcji i parametru zapisze wyczytana wartosc w polu struktury.
To użyj? Wczytaj konkretną wartość i zapisz do konkretnej zmiennej. I tak dla wszystkich wartości, jakie chcesz wczytać.
P-134962
tookie009
Temat założony przez niniejszego użytkownika
» 2015-07-21 12:23:26
jak zwykle najwieksza trudnosc mam w sformulowaniu pytania ;)

chodzilo mi o to, zeby zmienne automatycznie zakladac na podstawie nazwy sekcji i poszczegolnych variabli z ini-pliku.

czyli jak mam funkcje do wzytania wartosci zmiennej X  z sekcji Y to chcialbym zeby automatycznie zakladalo mi tez w programie zmienna Y[X].

W miedzyczasie znalazlem rozwiazanie: moge do tego uzyc std::map.

W miedzyczasie wyszlo na jaw, ze takie rozwiazanie nie przynosi sbyt duzo korzysci i lepiej poutwarzac dla kazdej sekcji odpowiednie struktury ;).

Mimo wszystko dziekuje za Wasze odpoweidzi, pozdrawiam
P-134991
« 1 »
  Strona 1 z 1