Siemka. Kilka dni temu zacząłem się uczyć php, a raczej chciałem zacząć php, a wyszło, że lepiej zacząć od C++ i tak zrobiłem :). Trafiłem na kanał pasja informatyki (kurs C++). Doszedłem do 10 odcinka i teraz zastanawiam się czy muszę wszystko przerobić aby przejść do php czy na którymś odcinku pozostałe informacje nie będą mi już tak potrzebne.

Wiem, że ten kanał jest dość popularny i zastanawiam się czy może ktoś
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Pajalockk: Niby tak, aczkolwiek znajomość jakiegokolwiek języka programowania sprawi że dużo łatwiej będzie nauczyć się kolejnego.

Jeśli docelowo chce się znać php, to moim zdaniem nie ma sensu zaczynać od cpp
  • Odpowiedz
@BloodDeath94: z i2c, spi i gpio nie musisz pisać sterowników/modułów (kernelspace).
Możesz z poziomu userspace się komunikować: /dev/i2c-*, /sys/class/gpio, /dev/spi* itp.
i2c odczytujesz korzystając z np. i2cdetect, i2cget i i2cset z pakietu i2ctools (jakoś), gpio, no coż /sys/class/gpio, spi nie pamiętam, pewnie spitools albo jakieś demo z githuba. :)
Programiki, coż tutaj wchodzi C czyli ioctl dla /dev/*, plików itp. ewentualnie wrappery jak wiringPi itp. i czytanie dokumentacji i szukanie
  • Odpowiedz
@Piterovy:
to tablica 5-elementowa, w której każdy element jest wskaźnikiem do funkcji przyjmującej tablicę intów i zwracający wskaźnik na char.

pa[0] = &foo
...
pa[4]
  • Odpowiedz
@Piterovy: No to p--------e jeśli chodzi o naukę programowania. Niby wiedza i znajomość niskiego poziomu daje większe wyobrażenie jak to faktycznie działa, o tyle mocno przeszkadza w nauce programowania, zaciemniając architekturę. Wiesz że w normalnym projekcie było by łatwiej i jest bezpieczniej napisać takie kontenery niż korzystać z #jezykc ?
  • Odpowiedz
@wieczniezielony: Konstruktor konstruuje obiekt. Jest to funkcja, ktora jest wywolana jak tworzysz obiekt. Mozesz w nim np. ustawic wartosci poczatkowe/domyslne dla skladowych klasy, zaalokowac zasoby itd.
osoba *nastepna; to wskaznik na klase typu osoba. Zapewne chodzi o stworzenie listy osob w taki sposob, ze pierwsza wskazuje na nastepna itd.
osoba::osoba(){...} to implementacja funkcji osoba() z klasy osoba (w tym przypadku konstruktora)
nastepna = 0; ustawia wskaznik na 0 czyli, zeby
  • Odpowiedz
@wieczniezielony: Generalnie musisz zrobic to co potrzebujesz zeby osiagnac swoj cel. Jesli dziala Tobie to co chciales, tak jak chciales bez konstruktorow to nie potrzebujesz konstruktorow ani zadnych innych rzeczy.

Natomiast jesli planujesz kiedys pracowac jako programista albo stworzyc projekt wiekszy niz 150 linii kodu to pewnie konstruktory sie Tobie przydadza. Oprocz tego przydadza sie Tobie rowniez:
- smart pointery (std::uniqueptr, std::sharedptr)
- rozsadne formatowanie
  • Odpowiedz
Hej :-)
Uczę się programować w #cpp i utknąłem w jednym miejscu, nie wiem, mam jakieś zaćmienie mózgu, czy coś xD
Otóż mam taki kawałek kodu:

#include

#include
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej, szukam pracy na stanowisko junior c++ w okolicy Gdańska. Póki co moje jedyne doświadczenie zawodowe to 2 miesiące praktyki. Jeśli Wasza firma obecnie rekrutuje, to prosiłbym bardzo o kontakt. Dzięki!

#praca #pracait #programowanie #cpp
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

szybkie pytanie #cpp #programowanie - czy jak mam klasę czysto wirtualną i na jej podstawie tworzę kolejną, także czysto wirtualną, to te funkcje wirtualne mam raz jeszcze deklarować jako virtual = 0, czy deklarować tylko te które już coś robią?
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

mam strukture:

template
struct tagged_struct {
constexpr static auto S_TAG = TAG_VALUE;
};
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, mam małą zagwozdkę - jak powinno działać typeid/typeinfo dla obiektów klas niepolimorficznych? Dobrze rozumiem, że kompilacja powinna się wywalić (RTTI chyba obsługuje tylko obiekty polimorficzne?)?
Przykładowy kod: http://ideone.com/Re6Ujc
Jak widać działa normalnie.
#cpp #programowanie
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

człowiek się uczy każdego dnia. Swoją drogą to ciekawe, bo można zmylić typeid jeśli klasa bazowa nie posiada vtable (nie wiem po co komu taka, ale who cares)


@nargil: Ale tutaj nie ma mowy o zmyleniu - Twój obiekt nie jest polimorficzny. Sam dokładnie podałeś przed chwilą definicję - musi istnieć vtable, tj. co najmniej jedna wirtualna metoda.
  • Odpowiedz
Podaj wartości zmiennych całkowitych a i b otrzymane w wyniku wykonania się poniższego kodu przy założeniu, że zmienne te mają następujące wartości:
a = -1
b = -1

if (!b){

b=b+a;
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pisałem sobie kod w Visual Studio i wywaliło mi prąd. Po ponownym uruchomieniu VS zapytał czy odzyskać pliki czy coś w tym stylu, dałem tak ale plik .cpp otworzył się całkowicie pusty. Mirki czy jest opcja żeby odzyskać ten plik .cpp? Uprzedzając pytania nie miałem włączonej historii plików w windowsie :(
#programowanie #windows #windows10 #cpp #kiciochpyta
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@zortabla_rt: nie mam pojęcia co może być chaotycznego w sprawdzaniu kolejnych wartości z tablicy. Brzmi jak słaba wymówka lenia :)
Poprawny schemat jest taki, że potrzebna Ci pętla przchodząca przez kolejne elementy tablicy i sprawdzająca zadane warunki.
  • Odpowiedz
Mam program, który w podanym przedziale wyszukuje 3 takie same liczby. Jeśli wystąpią 3 takie same, wyrzuca TAK. Jeśli nie wystąpią - NIE.
Pytanie do Was. Nie ogarniam czytania tego kodu. Rozpisuję sobie step by step, ale wychodzi jakaś kosmicznie niezrozumiała mieszanka. Ktoś ma sposób na rozpisanie sobie takiego programu, aby był zrozumiały i jasny dla newbie?

http://pastebin.com/jChUZjZm

#naukaprogramowania #cpp
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@wytrzzeszcz: Kiedy przedstawiona naiwna implementacja jest prosta jak drut, a op napisał że jej nie rozumie.
@zortabla_rt: Jedyny problem jaki możesz mieć to to że ta implementacja dla drugiego indeksu leci poprzez poprzednie a nie następne. To znaczy szuka czy dla elementu [i] nie pojawiły się wcześniej nie pojawił się taki sam element [j], a jeśli tak to czy za nim ale przed [j] niema takiego samego.
  • Odpowiedz