Przewodniczący komitetu C++, Herb Sutter, ogłosił że następna wersja orientowanego obiektowo języka programowania C++ została zatwierdzona, jako międzynarodowy standard, przez odpowiedni komitet ISO (ISO SC22 WG21). Zatwierdzony standard zostanie opublikowany, jako „C++11” przed końcem tego roku. Wcześniej znany bardziej, jako C++0x, spełnił oczekiwania wydania go na początku nowego stulecia.
Jak stwierdzi twórca C++, Bjarne Stroustrup, który zasiada również w komitecie, nowa wersja odzwierciedla oczekiwania programowania wysokopoziomowego bardziej, niż kiedykolwiek. Inżynierowie skupili się na tym, aby język był bardziej przyjazny dla programistów, w celu łatwiejszej jego nauki i w samym programowaniu. Nowa wersja dostarcza nam takich cech, jak bezpośrednie inicjalizacje pól danych (direct data field initialisation), funkcje lambda, ulepszoną standardową bibliotekę i jednocześnie funkcję programowania.
A ja jeszcze się uczę z książki nt. C++98 :< . Długa jeszcze droga przede mną…
podstawa jest taka sama no przejście na nowy standard jest najmniejszym problemem jeżeli zna się język ;)
Jedyna sensowna książka do nauki C++ to Symfonia. Zresztą i tak nie nauczysz się programować z książki.
Napisz proste programy w C, dobrze zrozum wskaźniki i c-stringi, potem coś prostego w C++ z klasami i templetami, a potem najlepiej dorzucić bibliotekę Qt i napisać w tym coś fajnego.
Wtedy masz szansę się czegoś nauczyć. Bo studiowanie podręczników bez praktyki nic nie da.
Ja nie czytałem prawie wcale książek, wyłącznie FAQ i odpowiedzi na Google, a reszta to samodzielna dłubanina.
@o_O: Symfonia IMO jest najgorszą książką do nauki – nie ma w niej nic treści, nawet podstaw języka (Symfonia + Pasja omawia ledwo podstawy), za to jest dużo bezsensownego gadania autora, które tylko przeszkadza. Dużo lepszym wyborem jest Język C++ autora C++ (Bjarne Stroustrup).
Moim zdaniem dodatki do C++ są ułatwieniem dla programistów, ale równocześnie utrudnią naukę języka, bo przez dodatki do składni staje się on bardziej skomplikowany i tym samym trudniejszy do opanowania.
Nie wiem czy utrudnia naukę – niektóre rzeczy w nowym standardzie ułatwiają, a innych i tak się uczyłeś, tylko poza standardem w nieoficjalnym rozszerzeniu standardu – bo każdy kto poważnie chciał programować w C++ musiał poznać boost – C++11 wprowadza część tego co jest w boost, tylko łatwiej się używa i jest w standardzie.
W przeciętnym kodzie im bardziej zaawansowana składnia tym rzadziej jest używana, a jak ktoś pisze w QT to rzadko lub w ogóle nie korzysta z boost.
Dla ludzi programujących w C++ to jest ułatwienie ale nie jest dla ludzi których muszą innych nauczyć języka. Patrząc na kod wielu niedoszłych programistów może się zniechęcić. Popatrzą tylko o ile prostszą składnie ma Java ;)
C++11 to dodatki dla zaawansowanych. Dla ludzi, którzy na tyle wgryźli się już w C++, że zaczęli dostrzegać jego braki.
Wystarczy się nauczyć starego C++. Potrzeba użycia nowości z C++11 przyjdzie sama z czasem i wtedy programista się sam o nich dowie przeszukując Google ;)
spełnił oczekiwania wydania go w pierwsze tego nowego stulecia.
Trzeba zacząć naukę C++11 ;-)
Jak znasz C++, to "nauka" C++11 zajmie ci 1-2 dni ;)
Większość nowości masz dobrze opisane tutaj: http://pl.wikipedia.org/wiki/C%2B%2B0x
Dopiero zamierzam nauczyć się całego C++, dlatego myślę od razu o C++11 :-)
Kiedy pełne wsparcie w GCC? ;) O ile wiem to mają już zgodność z niedawnym draftem, więc pozostaje zmienić nazwę i oznaczyć jako stabilną składnię, czy coś mają jeszcze coś do poprawienia?
Jeszcze jest trochę braków i wsparcia prawie wszystkiego nie spodziewam się wcześniej niż 4.8… o całkowitej zgodności radzę zapomnieć, bo puki co nie ma jeszcze całkowicie zgodnych kompilatorów z C++98 i C++03
http://gcc.gnu.org/projects/cxx0x.html
A Intelowski kompilator jak się ma ze zgodnością do specyfikacji?
@Michał Ober: słabo – najnowsza wersja ICC (12) wspiera bardzo mało jeszcze (mniej niż kompilator Microsoftu). Ogólnie dosyć aktualna jest ta tabelka http://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSu…
[…] wsparcie C++0x, jednakże nadal […]
[…] Transactional Memory) na wybranych architekturach. Kompilator C++ wspiera większy zestaw nowego standardu C++11, jak wsparcie dla operacji atomowych, delegating constructors, niestatyczne dane (inicjatory), […]
[…] wersja standardu C++ pojawi się najpewniej w 2017 roku. Przypomnijmy, że ponad rok temu wydano C++11, który jest aktualnym standardem programowania w języku C++. Został on wydany po blisko 13 […]
[…] wersja standardu C++ pojawi się najpewniej w 2017 roku. Przypomnijmy, że ponad rok temu wydano C++11, który jest aktualnym standardem programowania w języku C++. Został on wydany po blisko 13 […]
[…] qrc, wsparcie dla pełnego ekranu na OS X 10.7 i wyższych oraz udoskonalone wsparcie dla standardu C++11. Zintegrowano również eksperymentalne wsparcie dla projektu Necessitas na Androida oraz dodano […]
[…] qrc, wsparcie dla pełnego ekranu na OS X 10.7 i wyższych oraz udoskonalone wsparcie dla standardu C++11. Zintegrowano również eksperymentalne wsparcie dla projektu Necessitas na Androida oraz dodano […]
[…] zaproponował na listach dyskusyjnych narzędzie do automatycznej konwersji kodu C++ na nowy standard C++11. Miałoby się ono nazywać cpp11-migrate i być oparte o frontend Clang, z projektu LLVM. […]
[…] Dodano wsparcie dla standardu C++11 […]
[…] projekt Chromium, który w następnej stabilnej wersji będzie korzystał z funkcji języka C++11. Oznacza to użycie zestawu narzędzie GCC 4.6 oraz nowszych bibliotek. RHEL 6, jako system na […]
[…] C++ otrzymał kolejne wsparcia standardu C++11 oraz dostał wstępną nazwę roboczą dla kolejnego standardu języka: C++0y (-std=c++0y). Dodano […]
[…] projektu LLVM ogłosili, że Clang otrzymał pełną obsługę standardu C++11. Do tej pory jedynie GCC 4.8 posiadało pełną implementację specyfikacji języka C++11. W […]
[…] Dodano nową integrację dla testów jednostkowych (Unit Tests), co ma ułatwić ich uruchamianie i debugowanie w projekcie. Pojawiła się iteracja kreatora nowej klasy (New Class wizard), poprawiono interfejs użytkownika. Dodano wsparcie funkcji standardu C++11. […]
[…] Ogłoszono wydanie zestawu kompilatorów GCC 4.8.1. Naprawiono znalezione błędy oraz ukończono pełne wsparcie dla standardu C++11. […]
[…] Na konferencji LinuxCon North America, która odbyła się w dniach 16 – 18 września 2013 roku, Behan Webster przedstawił obecne prace nad projektem LLVMLinux. Chodzi mianowicie o umożliwienie pełnej i bez błędów kompilacji jądra Linux z użyciem LLVM i Clang. Owe narzędzia są wykorzystywane m.in. przez Apple, nVidia, Intel, Google, a nawet Debiana. Dodatkowo LLVM 3.3 i Clang 3.3, jako jedne z pierwszych narzędzi obsługiwały w pełni standard C++11. […]
[…] zgodność ze standardem C++11 i C++14 w […]
[…] zaimplementowała pełną obsługę standardu C++11, dodała nową bibliotekę cuSOLVER oraz wsparcie dla kompilacji podczas wykonywania […]