@void1984: Instalator śmieci w systemie, builds się po prostu rozpakowywuje i możesz go dodać do PATH w razie potrzeby. Poza tym, raczej i tak będziesz korzystał z jakiegoś IDE, które binarki samo do PATH doda ;)
  • Odpowiedz
@KrzaQ2: Nie używam IDE, na dwa tygodnie nie chce mi się poznawać nowego. Wystarczy notepad++.

Akutalizacja PATHa to banał. Za to przekonałem się, jak źle i nieprzenośnie napisałem cmake'a gdy był tylko dla linuksa.

Szkoda że na oficjalnej stronie nie linkują do mingwbuilds, wystarczyłaby wzmianka - jeśli chcesz być alternatywny i chcesz model wątków posix, to my nie jesteśmy tym zainteresowani, idź TAM.
  • Odpowiedz
#programowanie #cpp Jakich parserów plików XML używacie lub byście używali i dlaczego? TinyXML? Xerces-C++? RapidXML? Jakiś inny? I co takiego w tym parserze jest fajnego, a czego mu brakuje? Ważna jest dla was szybkość? Prostota? Zgodność z rekomendacją W3C? Obsługa DTD? W takich językach jak Java wybór jest prosty, ale nie w C++. Ja na przykład nie znalazłem interesującego mnie parsera i jestem w trakcie pisania własnego... zastanawiam
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mero3: na cmake nie, ale nie widzę czemu by miało tego nie zrobić, w końcu to zwykły projekt, który niczym się nie różni od innych projektów Qt (no ok, jest

QT += testlib
i inkludy, ale nie wiem czym testlib miałby się różnić np. od sqla)
  • Odpowiedz
@Sordi: oba sposoby nieprzenośne. Jeśli koniecznie musisz zatrzymać okienko konsolowe (jak by nie można było po prostu odpalić binarki z konsoli i nie mieć takich problemów) to najlepiej jakiś cin czy scanf - czyli coś gwarantowanego przez standard.
  • Odpowiedz
#cpp Czy tworząc kopiec trzeba, czy powinno się oznaczać korzeń indeksem nr 1? Czemu nie od nr 0? (Widziałem taki przykład i przyjmuję ad priori, że każdy tak robi)
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#cpp11 #cpp

Używacie słowa kluczowego 'auto', bo szybciej się pisze; czy raczej od niego stronicie, by typ danej był bardziej czytelny?
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@void1984: Wszystko zależy od kontekstu. Jeśli typ może się zmienić (np zależy od parametru szablonu) auto jest bardzo użyteczne. Ogółem, za każdym razem musisz zdecydować, która wersja jest lepsza. Ja staram się używać pełnej nazwy typu tylko i wyłącznie gdy dokonuję konwersji (np przypisuję wskaźnik na

derived
do wskaźnika
  • Odpowiedz
Takiego programistycznego WTF to ja nigy nie miałem:

- puszczam program w trybie Debug - błędny wynik oraz dumpy

- puszczam w trybie Debug, ale zatrzymuję się w dowolnym miejscu breakpointem - działa poprawnie.

Program
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@gorfag: Ano, to nie łatwa rzecz. Ludziom się wydaje, że to hopsiup i w ogóle. Póki co udaje mi się zbywać mądrymi słówkami, wtedy dostaję odpowiedź, że nic nie rozumieją i to moja przewaga :3
  • Odpowiedz
@gorfag: mażesz po pamięci pewnie. Jak jest breakpoint to nie dochodzi do użycia zepsutego miejsca w pamięci i się nie wywala. Jak pracujesz pod Linuksem zobacz sobie valgrind - świetne narzędzie do wykrywania nieprawidłowegu użycia pamięci (używania zwolnionych wskaźników itp), ma też inne narzędzia - do wykrywania race condition, do optymalizacji, do wykrywania wycieków pamięci, itp.

Odpalasz : valgrind TWOJA_BINARKA - Twój program działa dużo (kilkanaście) razy wolniej, i wypisuje
  • Odpowiedz
@karololo: Czegoś konkretnego?

@Kiro: no kilka ficzerów cpp11 napakowałem tam do kodu ;) Ale jak masz lepszy pomysł na oznaczanie wielkości kroku w niższym przykładzie to bardzo chętnie przyjmę.
  • Odpowiedz
typedef double (fun)(double, double); fun f[10];
fun bez zmian

f to tablica 10 wskaźników na na funkcję zwracającą double i przyjmującą 2 argumenty typu double
  • Odpowiedz
Chciałem napisać interpreter własnego języka no i niestety utkwiłem. Rozwijanie go samemu ma sens ja się wie na czym stoi. A mój interpreter jest mało wygodny i wgl problem z zwykłymi rzeczami (np tokeny). kto byłby chętny współtworzyć w C/C++ jakiś sensowny język skryptowy z troszkę inną składnią ze mną?

np

[zmienna ] operator wartość/wyrażenie lub ; //zmienne

(funkcja)[argument1]
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jakiej biblioteki użyć w C++ by szybko i sensownie (łatwe API) parsować pliki pod kontem różnych dziwnych wyrażeń w stylu np:

(funkcja)[zmienna] = { tresc}
(funkcja)[zmienna];
[zmienna] operator wyrazenia(mat/log/string);
'[zmienna] = typ`
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@XTas: chodzi o to, że liczysz kolejne iteracje, aż kolejny wyraz jest mniejszy niż błąd - i wtedy błąd z powodu pominięcia kolejnych nieskończonej liczby wyrazów jest mniejszy niż błąd. To jeszcze zależy od sposobu zbieżności, szczegółów nie pamiętam, ale w praktyce do tego się to sprowadzało
  • Odpowiedz
Kojarzycie strony z zadaniami z pętli, takie typowe zastosowania. Symfonia ma to do siebie, że ma dużo teorii, a ja nie jestem w stanie bez praktyki tego zapamiętać, a też chciałbym zobaczyć jak to konkretniej zastosować.

#cpp #symfonia #roballoprogramuje
  • 23
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach