a to nie jest tak, że C++ jest taki dość mocno rozbudowany i trudny, bo łatwo przechodzić z niego na inne języki programowania? przesiadka z niego na JS, PHP u mnie była dość łatwa.
@Saly: za każdym razem kiedy próbuję używać template w C++ kończy się to niezrozumiałym błędem linkera. Fajnie by było gdyby kompilator mówił co zrobiłem źle zamiast drukować śmieci do terminala.
a co do variant, to szanuję że wreszcie to dodali i nie #!$%@?. Nie wiedziałem o tym.
@Saly: Prawdziwy zero-cost abstraction to tylko polimorfizm statyczny, żaden JIT nie poradzi sobie tak dobrze. @ca1ek: Jeżeli ktoś nie potrafi rozróżnić definicji od deklaracji i zrozumieć dlaczego definicja jest potrzebna do instantyzacji to jak ma zrozumieć co znaczą błędy linkera, nawet podczas gdy obecnie przy wersji debug całkiem ładnie pokazuje definicje.
@ca1ek: Jak patrze na kod w Ada to mnie ściska z bólu... ale okej, co kto lubi.
C++ jest wydajny, a przy tym dosyć dobrze rozbudowany.
Nie wiem w jaki standard patrzyłeś, ale polimorfizm jest nawet "niebezpiecznie" lepszy niż w wielu językach (można z wielu typów, niebezpieczne, bo to niezbyt dobra praktyka...), do tego RTTI, da się zmienić alokatory.. cały system template!
#!$%@? zacząłem się uczyć język ada i się zastanawiam:
C++ - na #!$%@? to żyje
Ada powstała kilka lat wcześniej i jest kilka lat do przodu w każdym względzie
@ca1ek: co uważasz za sensowny polimorfizm? Imo polimorfizm w cpp jest jedną z bardziej udanych rzeczy zważywszy na zero-cost abstraction.
@ca1ek: jest przecież std::variant / boost::variant
a co do variant, to szanuję że wreszcie to dodali i nie #!$%@?. Nie wiedziałem o tym.
@ca1ek: Jeżeli ktoś nie potrafi rozróżnić definicji od deklaracji i zrozumieć dlaczego definicja jest potrzebna do instantyzacji to jak ma zrozumieć co znaczą błędy linkera, nawet podczas gdy obecnie przy wersji debug całkiem ładnie pokazuje definicje.
C++ jest wydajny, a przy tym dosyć dobrze rozbudowany.
Nie wiem w jaki standard patrzyłeś, ale polimorfizm jest nawet "niebezpiecznie" lepszy niż w wielu językach (można z wielu typów, niebezpieczne, bo to niezbyt dobra praktyka...), do tego RTTI, da się zmienić alokatory.. cały system template!
IMO C++ > Ada.