Co do tego Twojego przykładu, to lepiej żeby średnia była typu int, wtedy sprawa jest dużo prostsza:
- Kod: Zaznacz cały
Form1->StringGrid1->Cells[45][p] = CurrToStrF(wynik, ffFixed, srednia);
O tworzeniu i pobieraniu danych z plików ini przeczytasz
w serwisie Cyfrowy
Baron dział:
teoria
pliki ini.Dane konfiguracyjne możesz zapisywać w dowolnym momencie podczas działania programu, a najlepiej zawsze gdy zachodzi jakaś zmianach w tych danych. Pliki ini mają tą zaletę, że tworząc prywatny lub publiczny obiekt klasy TIniFile nie musisz zapisywać wszystkich danych konfiguracyjnych na raz, możesz zapisać tylko to co się zmienia.
Wczytywanie danych konfiguracyjnych najlepiej realizować zawsze podczas uruchamiania programu, np. w zdarzeniu OnCreate.
Odnosząc się do przykładu polymorphism z założeniem, że średnia jest typu integer a nie bolean:
- Kod: Zaznacz cały
TIniFile *ini = new TIniFile(ExtractFilePath(ParamStr(0)) + "Nazwa_pliku.ini");
int dokladnosc_sredniej;
/* czytasz */
dokladnosc_sredniej = ini->ReadInteger("ustawienia","dokladnosc.sredniej", 2); // wartość domyślna 2, jeżeli plik nie zawiera takiego rekordu
/* używasz */
Form1->StringGrid1->Cells[45][p] = CurrToStrF(wynik,ffFixed, dokladnosc_sredniej);
dokladnosc_sredniej = 3; // zmiana wartości domyślnej
/* zapisujesz */
ini->WriteInteger("ustawienia","dokladnosc.sredniej", dokladnosc_sredniej); // zapisanie zmian w wartości domyśłnej