🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #217583

Re: rzadki bład w programie w C++

#217583
From: Maciek Godek
Date: Tue, 24 Aug 2021 14:33
38 lines
4571 bytes
wtorek, 24 sierpnia 2021 o 10:57:42 UTC+2 robert.mag...@gmail.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 robert.mag...@gmail.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 robert.mag...@gmail.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-implode-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.
Technical Details
Message-ID: <2fb81a33-e9ab-4c16-a2a2-3af25e2d5a21n@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr3.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
References: <903213e7-90d8-443c-98f4-7ccefb998340n@googlegroups.com> <4a05fbb5-2f73-411f-82c9-0eb4ed28c2a5n@googlegroups.com> <2edb8323-e973-42ee-941a-741c0673ff77n@googlegroups.com> <c1d2a942-4e7c-4452-824d-71a8db594048n@googlegroups.com> <3dfd68ef-d0fb-47f4-a2ce-e9c069713457n@googlegroups.com> <f1fb5dec-5ffe-45da-9bee-4521b3d17477n@googlegroups.com> <41fd5c32-23e3-47d2-868a-172ab784564an@googlegroups.com>

Show Full Headers
Complete Article Headers
X-Received: by 2002:ac8:108a:: with SMTP id a10mr35221070qtj.14.1629815631665; Tue, 24 Aug 2021 07:33:51 -0700 (PDT)
X-Received: by 2002:a05:620a:111b:: with SMTP id o27mr27272819qkk.76.1629815631460; Tue, 24 Aug 2021 07:33:51 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr3.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Tue, 24 Aug 2021 07:33:51 -0700 (PDT)
In-Reply-To: <41fd5c32-23e3-47d2-868a-172ab784564an@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=213.192.68.153; posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r
NNTP-Posting-Host: 213.192.68.153
References: <903213e7-90d8-443c-98f4-7ccefb998340n@googlegroups.com> <4a05fbb5-2f73-411f-82c9-0eb4ed28c2a5n@googlegroups.com> <2edb8323-e973-42ee-941a-741c0673ff77n@googlegroups.com> <c1d2a942-4e7c-4452-824d-71a8db594048n@googlegroups.com> <3dfd68ef-d0fb-47f4-a2ce-e9c069713457n@googlegroups.com> <f1fb5dec-5ffe-45da-9bee-4521b3d17477n@googlegroups.com> <41fd5c32-23e3-47d2-868a-172ab784564an@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2fb81a33-e9ab-4c16-a2a2-3af25e2d5a21n@googlegroups.com>
Subject: Re: rzadki bład w programie w C++
From: Maciek Godek <godek.maciek@gmail.com>
Injection-Date: Tue, 24 Aug 2021 14:33:51 +0000
Lines: 67
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit