eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingrzadki bład w programie w C++ › Re: rzadki bład w programie w C++
  • Data: 2021-08-24 16:33:51
    Temat: Re: rzadki bład w programie w C++
    Od: Maciek Godek <g...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    wtorek, 24 sierpnia 2021 o 10:57:42 UTC+2 r...@g...com napisał(a):
    > wtorek, 24 sierpnia 2021 o 10:12:13 UTC+2 Maciek Godek napisał(a):
    > > poniedziałek, 23 sierpnia 2021 o 20:57:59 UTC+2 r...@g...com
    napisał(a):
    > > > poniedziałek, 23 sierpnia 2021 o 16:48:49 UTC+2 Maciek Godek napisał(a):
    > > > > poniedziałek, 23 sierpnia 2021 o 16:04:12 UTC+2 r...@g...com
    napisał(a):
    > > > > > poniedziałek, 23 sierpnia 2021 o 15:44:35 UTC+2 Maciek Godek napisał(a):
    > > > >
    > > > > > w pliku cache.xml mam atrybut strs="" a powinien być niepusty string
    > > > > No dobra, to już jest coś.
    > > > > A teraz kilka pytań bardziej konkretnych: w jaki sposób i w jakich
    okolicznościach tworzysz plik cache.xml?
    > > > Pod koniec działania programu. Wykorzystuję bibliotkę pugixml (i xml_document).
    Mam z nią problemy, musiałem użyć atrybutu, bo zapisywanie w treści węzła nie
    działało mi.
    > > > > W jaki sposób atrybut "strs" jest reprezentowany w pamięci podczas działania
    programu?
    > > > vector<string>, robię strs = implode(magic_str, vector<string>)
    > > Skąd jest ta funkcja "implode"?
    > to moja funkcja a la PHP - łączy stringi z kolekcji przedzielone pierwszym
    parametrem w jeden string

    Tzn. się domyślam do czego służy.
    Raczej bym chciał zobaczyć definicję, żeby stwierdzić, czy nie ma w niej jakiegoś
    nieoczywistego błędu
    (skoro to nie jest funkcja z biblioteki standardowej)

    Ewentualnie możesz spróbować ją zamienić na biblioteczną, np. z boost:

    https://stackoverflow.com/questions/5689003/how-to-i
    mplode-a-vector-of-strings-into-a-string-the-elegant
    -way

    (tak czy siak, lepiej w miarę możliwości korzystać z gotowców, niż pisać własne
    funkcje na rzeczy, dla których gotowce istnieją)

    > > > moje vector<string> to drugie składowe unordered_map<wstring, vector<string>>
    > > Zacząłbym od tego, że w momencie zapisywania pliku cache.xml tworzyłbym również
    plik z logami (może być nawet zapis na stderr, który byłby zrzucany do jakiegoś
    pliku) i wówczas, jeżeli bym zobaczył, że plik jest zepsuty, to bym sobie dogłębnie
    te logi przeanalizował.
    > > > > Używasz systemu kontroli wersji (np. git) do rozwijania programu?
    > > > nie
    > > To zacznij. Najlepiej już dziś.
    > na razie czytam książkę o git-cie

    W najprostszym razie piszesz po prostu "git init" w folderze, który chcesz
    wersjonować, i później "git commit zmodyfikowane_pliki..." po każdej istotnej
    zmianie.

    Ale najlepiej założyć sobie konto na jakimś serwisie w rodzaju githuba albo gitlaba i
    tam trzymać cały kod (wtedy dochodzą jeszcze operacje "git push" i "git pull", żeby
    synchronizować ze sobą repozytoria)

    To jest o tyle spoko, że te serwisy od razu udostępniają narzędzia do wygodnego
    przeglądania zmian.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: