Po co są settery i gettery? W sensie, rozumiem, że dzięki nim dostaję się do składowych prywatnych klasy ale dlaczego nie mogę dać wszystkich pól jako publiczne? To brzmi tak, jakbym miał nimi chronić kod przed sobą samym(kimś innym?).
#pytanie #cpp #naukaprogramowania
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@RaVo: a jak byś opublikował kod w postaci biblioteki i jakiś typ przez przypadek nadpisał wewnętrzną zmienną(i zgłosił że coś nie teges z biblioteką)? Albo skasował wskaźnik?
Settery/Gettery można automatycznie generować przecież.
  • Odpowiedz
jest dużo powodów:
- w razie czego można dodać walidacje danych.
- można usunąć pole zachowując kompatybilność kodu tylko edytując settey/gettery tak by pasowały do nowego kodu.
- czasami mamy np pola x/y/z ale chcemy mieć settera/gettera jako np Vector (tylko przykład)
- też właśnie dla fieldów read/write-only.
- No i nie do wszystkich wgl potrzebujesz gettera/settera, czasem lepiej zachować je prywatnie, bez żadnego dostępu.
  • Odpowiedz
@Leinnan: Z czysto "kodowego" punktu widzenia:

- nie stosuj takich dzikich zmiennych globalnych
- inicjalizuj zmienne wartościami początkowymi.
- kompiluj kod z włączonymi flagami -Wall i -Werror - brak returna z funkcji nie pozwoliłby na skompilowanie tego kodu
- takie skomplikowane wyrażenia logiczne jak w Twoim if-ie lepiej odpowiednio pootaczać nawiasami, żeby usunąć wszelkie wątpliwości co do kolejności
  • Odpowiedz
#komputery #programowanie #cpp

Mireczki mam taki plan ambitny, bądź nie - jeszcze nie mam pewności jakie to trudne. Będę miał do przetwarzania ogromne ilości danych, mówimy tutaj np. o 8 albo 10 milionach danych typu double, czasem pewnie i więcej nawet. No i na tych danych trzeba będzie cośtam liczyć. No i tak sobie pomyślałem, że może by przyszpanować (o ile będę w stanie) i spróbować
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#sublimetext #cpp #programowanie
Podłączyłem sobie kompilator do Sublime Text, ale niestety mam problem, bo wywala mi błędy jak tylko korzystam ze standardu C++11, próbowałem dołożyć sublime-cpp11 package, ale tutaj z kolei przy próbie kompilacji poza błędami np o braku bibliotek (które są w 11) wyskakuje taki błąd: g++: unrecognized option -std=c++1y'`
Jakieś pomysły jak to naprawić? Dodam, że korzystam z win7
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Android
  • 0
@kalectwo: Wiesz co, ja już chyba próbowałem wszystkiego i raz na kilka(naście?) prób zadziała innym razem już nie działa, więc naprawdę nie wiem co może być nie tak. Tak że stwierdziłem że szkoda mojego czasu na zabawę z tym i zostaje przy IDE
  • Odpowiedz
#cpp #naukaprogramowania
Mam pytanie, rozwiązuję zadanie z książki Praty o takiej treści:

Write a program that asks you to enter an automobile gasoline consumption figure in the European style (liters per 100 kilometers) and converts to the U.S. style of miles per gallon. Note that in addition to using different units of measurement, the U.S approach (distance / fuel) is the inverse of the European approach (fuel /
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#hacking krytyczny błąd w libc pozwala atakować prawie każdy program sieciowy (o ile robi on "getaddrinfo" - np jeżeli wysyła zapytania DNS). Poprawki już wyszły (np debian), wystarczy update i reboot.

#linux #security #itsecurity ; nie wiem czy też nie #bsd czy tam inny mac.
CVE-2015-7547
https://googleonlinesecurity.blogspot.com/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html
https://news.ycombinator.com/item?id=11109967
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki, czy jest sens jeszcze siedzieć w Delphi, czy już czas zacząć siedzieć w C++ i uczyć się portując swoje aplikacje? W sumie odpowiadam sobie sam na to pytanie: coraz ciężej znaleźć pomoc do Delphina, a jak zamienię słówko Delphi na C++ to pomoc znajdę nawet na 10 stronie w Google... #delphi #cpp
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #qt #cpp

Pytanie do programistów Qt i w sumie nie tylko.

Potrzebujemy w Qt pojemnika do przechowywania dużych ilości próbek typu double. Mówimy tutaj o ilościach próbek przekraczających nawet 4 miliony.

Logika
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
@levil: ustaw breakpointa z warunkiem aby odpalił się wtedy kiedy chcesz. gdb: b blabla.cpp if warunek a msvc możesz wyklikać.
  • Odpowiedz
@levil: A nie możesz walnąć jakiegoś printfa, który by ci za każdym razem wyświetlał na którym poziomie jest rekurencja i jaka jest wartość zmiennej?
  • Odpowiedz
#programowanie #cpp #algorytmy #bioinformatyka
kolejny post z cyklu jestem w dupie bo obijałem się przez cały semestr ( ͡° ʖ̯ ͡°) nie wiedzieć czemu ( ͡° ʖ̯ ͡°). Zadanie wygląda następująco: http://www.cs.put.poznan.pl/mkasprzak/akb/zad4.html
mój kod: http://pastebin.com/mJxSH2ZL
i teraz jak widzicie nie działa, nie wiem czemu nie wraca pomimo znalezienia błędnego rozwiązania. ma ktoś jakieś uwagi ?
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@levil: Sory ze się czepiam, ale wszędzie korzystasz z WielkosZbioru zamiast poprostu z zbior.size() a nie widzę problemów byś miał jakieś rożne rozmiary, zamiast:

int ZnajdzMaxWartosc(int c, vector tab)

zrób:

int ZnajdzMaxWartosc(vector const&
  • Odpowiedz
Kupiłem książkę Alexa Allaina 'C++. Przewodnik dla początkujących'. Niestety dopiero w domu doczytałem informację odnośnie c++11 'Specyfikacja ta została zatwierdzona, gdy niniejsza książka była prawie na ukończeniu, w związku z czym nie zamieściłem w niej żadnych materiałów dotyczących nowego standardu. Cykl artykułów przedstawiających C++11 znajdziesz pod adresem..'

Oddać tą książkę i zamówić 'Język C++. Szkoła programowania. Wydanie VI' która działa już na C++11? Dopiero chcę zacząć programować i jestem totalny zielony, więc
  • 18
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@m1804: Nie opisuje. Ale jaki jest sens zaczynać od c++11? To może od razu c++14? Jak chcesz zacząć programować to zacznij od symfonii. Każdy Ci to powie. Kolejne wersje c++ to tylko drobne zmiany z którymi zapoznasz się w kilka minut czytając dokumentacje czegokolwiek, jak już będziesz ogarniał w dobrym stopniu c i c++. Musisz mieć podstawy po prostu. Nie od razu Rzym zbudowano ;)
  • Odpowiedz
#programowanie #cpp czy przy pomocy memcpy() jestem wstanie zrobić hardą kopie obiektu mojej klasy, która zawiera obiekt innej klasy a ten dynamiczne 2 wymiarowe tablice ? może robię coś źle gdyż kopiuje mi jedynie adres.
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach