Czołem Mirki.

Rozwiązuję właśnie ostatnie zadania ze wskaźników i na jednym stoję już dobrą godzinę się w--------c.

Treść zadania:

  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Lux_Aeterna:
1. cassert ma tylko krzyknac bledem i wylaczyc aplikacje, jesli rozmiar bufora nie pomiesci prefixu.

2. iterator to taki bardziej rozbudowany wskaźnik, np to co std::vector zwraca w .begin() i .end() to są iteratory. My ich tu tak naprawdę nie używamy, my używamy pointerów char*. reverse_iterator to taka nakładka, która powoduje, że inkrementacja powoduje dekrementację i vice-versa. Dodatkowo parametr, ktory podamy na wejsciu jest wewnętrznie dekrementowany o 1.

Używamy
  • Odpowiedz
Jak najlepiej napisać prosty system wyświetlania tekstu z własnymi czcionkami, który by wyświetlał tekst litera po literze, tak jak w grach RPG na nintendo? Wymyśliłem sobie tak, żeby zrobić obrazek z całym alfabetem i znakami, a potem napisać funkcję, która by przyjmowała tekst np. w ten sposób - write("Tekst do wyświetlenia") - a potem iterowałaby po kolei przez każdą literę, litery (duże i małe) byłyby przypisane do miejsc na obrazku z czcionką
Goryptic - Jak najlepiej napisać prosty system wyświetlania tekstu z własnymi czcionk...
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jakie może być pierwsze stanowisko dla kogoś, kto się uczy #cpp? Mam wrażenie, że poza programowaniem mobilnym i webowym nic już się nie liczy, a niskopoziomowe to tylko dla hardcorów przy grach AAA i praktycznie inżynieria programistyczna przy sofcie typu Photoshop. #programowanie
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

W jaki sposób parsujecie parametry wejściowe aplikacji konsolowych w #csharp lub #cpp albo jakie sposoby znacie i polecacie? Nie chcę używać zewnętrznych bibliotek, chcę to napisać sam, ale nie wiem jak się za to zabrać od strony architekturalnej.
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 1
@ZjedliMiRogale no to wszystko zależy co potrzebujesz. Generalnie podstawa to być idioto-odpornym. Czyli jak pytasz o wiek, a ktoś Ci wpisze "usuń konto" to, żebyś nie rzucał wyjątkiem :p. Pewnie jakiś do while i TryParse się przyda :)
PS w realnych aplikacjach bardzo rzadko przyjmuje się w ten sposób parametry :p
  • Odpowiedz
#anonimowemirkowyznania
Mireczki, sprawa wygląda następująco:

Chciałbym sam się utrzymywać w wieku 18 lat (kontynuując przy tym naukę w liceum+ew. studia)
Uważacie to za możliwe?

Rocznik
AnonimoweMirkoWyznania - #anonimowemirkowyznania 
Mireczki, sprawa wygląda następując...

źródło: comment_CuKsvPlCt8p0YBIQiXtd0r4Os1OcHtls.jpg

Pobierz

Czy da się utrzymać samemu w wieku 18 lat?

  • Tak 58.8% (57)
  • Nie 41.2% (40)

Oddanych głosów: 97

  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@AnonimoweMirkoWyznania: Da radę, z tym że skupiłbym się raczej na małych/szybkich zleceniach frontend / php. Sam tak robiłem pod koniec liceum, z tym że czysto hobbistycznie, nie miałem potrzeby się samemu utrzymywać. Kwota o której mówisz luźno wyciągalna.

Nauczysz się podstaw javy / c++ i będziesz miał problem dorwać małe szybkie zlecenia na freelance. Na jakiś staż / pomniejszony etat raczej się nie wyrobisz czasowo, przynajmniej na początku.
  • Odpowiedz
Natrafiłem na krótki filmik na yt i liczę na waszą pomoc bo nie za bardzo ogariam o co chodzi. Czemu for(auto v: r) jest złe i co to znaczy "accidentally al the objects". #cpp
inplaz - Natrafiłem na krótki filmik na yt i liczę na waszą pomoc bo nie za bardzo og...
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@nargil: No nie ma. Ale jesli mamy do wyboru 2 rozwiazania, z ktorych jedno jest zazwyczaj lepsze i nigdy gorsze to ja bym uznal to lepsze za lepsze:)

---------------------------------------------------
Byc moze ktos znajdzie jakis przyklad gdzie kopia bedzie lepsza. Ale jako 'rule of thumb' powinno sie robic tak jak Dietmar powiedzial.
  • Odpowiedz
Dzień dobry Mirko!

Mam pytanie co do "udostępniania" napisanego programu. Wraz z kumplem napisaliśmy mały program w C++ i chcieliśmy go rozesłać znajomym, żeby się nim pobawili. Wziąłem więc plik .exe z folderu Debug i wysłałem, niestety coś im nie chce działać... Jak to się robi, żeby program odpalił na każdym komputerze, a nie tylko na naszym? Nie mogę nigdzie znaleźć jakichkolwiek rozwiązać, tak więc postanowiłem zapytać tutaj. Kazałem im zainstalować "Visual
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Udostępnianie gotowych binarek, to bardzo słaba praktyka.

@badger69: Weź się zastanów jak słabe to jest co napisałeś :D
No i "Visual C++ Redistributable" to zupełnie co innego niż "Visual Studio"
  • Odpowiedz
@lionbest: zwykle jak się walnę gdzieś w czymś związanym z szablonem, to potem wali pierdyliard błędów w każdym miejscu. ładuję mu za każdym razem -std=c++14, to chyba nie jakiś archaiczny ( ͡° ʖ̯ ͡°)
  • Odpowiedz
a później przychodzi prawdziwy projekt i każdy warning trzeba zrozumieć, wyjaśnić, pozbyć się go...


@navry: taa, szczególnie pozbycie się błędów z kodu co ma 25 lat jest powszechne ;)
  • Odpowiedz
#programowanie #cpp #algorytmy
Mam sobie zmienną liczbową jakiegoś typu (np. long long). Opisuje ona średnią czasu w jakichś jednostkach (np. mikrosekundach), czyli np. została obliczona tak:

(1) x = (a + b + c)/3
lub tak:

(2)
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@KostekZgubina: No to zdecydowanie tak. Pomimo tego, ƶe wiele (nie wszystkie!) programów w C to poprawnie działające programy w C++ to są to języki bardzo róƶne. Pisząc kod w nowoczesnym C++ bardzo mało będziesz w nim widział podobieństw z C i IMO nauka w stylu Symfonii C++ (gdzie uczysz się C with Classes T_T) jest bezsensowna.
  • Odpowiedz
@kaab10: zakładając że i jest typu całkowitego, albo jakiegokolwiek innego bez złożonych konstruktorów/destruktorów, nie sądzę żeby to miało jakieś znaczenie.
  • Odpowiedz
@kaab10: Nie ma zadnego znaczenia czy uzyjesz post, czy preinkrementacji w petli, kod wygenerowany przez kompilator w jednym i w drugim przypadku zostanie taki sam. A co do troche przyspieszenia kodu, to mam kontr argument, ze jak operujesz na zmiennej tymczasowej to unikasz data dependency i to troche przyspiesza wykonywanie kodu (oczywiscie to wszystko zalezy).
  • Odpowiedz
Można grę w końcu ukończyć :P
Pozostało poprzenosić część kodu z klasy Game i utworzyć klasę Level, dorobić pare map, stworzyć menu i może dodać trochę dźwięków i można mówić o w miarę ukończonej grze :D

Mój tag: #leinnanblends

#gamedev #cpp #programowanie #sfml
Leinnan - Można grę w końcu ukończyć :P 
Pozostało poprzenosić część kodu z klasy Ga...
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Leinnan: No tak, ale jeszcze implementacje się różnią od siebie. Widzę że korzystasz z Linuxa, najlepsze do nauki są otwarte sterowniki, bo najmniej błędów wybaczają ( ͡º ͜ʖ͡º) szczególnie czepiają się przy kompilacji GLSLa którego będziesz musiał poznać by narysować choć jeden vertex (Core profile).
Np stery od Nvidi to łykają wszystko i nagle się okazuje że na AMD nie chce działać bo bląd kompilacji
  • Odpowiedz
Mirki, próbuję usiąść do nauki C++, ale za każdym razem jak zabieram się za jakieś materiały to odpadam po godzinie/50 kartkach tłumaczenia mi co to pętle i zmienne. Problem polega na tym, że jestem już programistą, więc potrzebuję książki, która nauczy mnie specyfiki języka, a nie będzie mnie uczyć podstaw programowania. Polecacie jakaś książkę, która będzie aktualna?
#programowanie #cpp
  • 21
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirko jak zwykle w fromie jak nie polecanie gowna typu prata c++ lub symfonia, teraz poleca 1200 stronnicowa ksiazke ktora jest praktycznie referencja do nauki...

To jest po prostu masakra co tu sie dzieje, ciagle wypowiadaja sie te same osoby praktycznie bez wiedzy.

To jes bardzo dobre podsumowanie poziomu ludzi ktorzy tu siedza:

dokumentacja
  • Odpowiedz
#cpp #programowanie
Jak radzić sobie z brakiem pamięci?
Mogę zwolnić zasoby, ale nie chcę w każdym możliwym miejscu przed alokacją sprawdzać czy jest jeszcze pamięć. Zrobiłbym to wyjątkiem obsługiwanym globalnie na std::bad_alloc, ale wtedy i tak jest za późno. Napisanie własnej funkcji new nie wiele da, bo nie będzie ona używana np przez std::string.
Jakieś pomysły?
  • 17
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jeszcze nie doszedlem do programowania obiektowego, ale robie swoj maly program.
Mam obiekty typu int: a,b,c,d,e,f,g,h. Kazdej chcialbym przydzielic losowa liczbe calkowita od 0-7 w taki sposob, by sie nie powtarzaly.
np. a=1, b=6, c=2, d=3, e=4, f=7, g=5. Chcialbym zeby program to robil automatycznie przy starcie.

a=rand()%8;
b=rand()%8;
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Primbledon A ja się jeszcze uprzejmie przyczepię, bo jakbyś kiedyś tak na rozmowie kwalifikacyjnej jebnął to odpadasz na starcie ;-)

Mam obiekty typu int: a,b,c,d,e,f,g,h.


int to typ prymitywny. Nie jest obiektem.
  • Odpowiedz
@sokytsinolop: Moznaby to zrobic obiektowo. Az sie prosi.
Zamiast tablic lepiej chyba byloby uzyc jakiegos sensownego ceplusplusowego kontenera (std::vector, std::array).
Pomijajac wszystko... w generation() chyba lepiej zebrac wszystkie pola do uaktualnienia a potem je uaktualnic zamiast kopiowac tablice tam i spowrotem.
  • Odpowiedz
@wytrzzeszcz: to komuś słabiutko idzie przyswajanie faktów. qsort jest duƶo gorszy od std::sort, bo uniemoƶliwia optymalizację.

W kaƶdym razie: qsort wymaga funkcji zwracającej trzy stany (mniejsze, równe, większe), std::sort potrzebuje lessthan gwarantującego strict weak ordering. Czyli normalny < dla intów.

std::sort(buffer_data, buffer_data+BUFFER_SIZE, cmp) i gotowe
  • Odpowiedz