• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Gdzie mogę znaleźć nowinki o C++?

Object Storage Arubacloud
+2 głosów
627 wizyt
pytanie zadane 13 lipca 2015 w C i C++ przez k222 Nałogowiec (30,150 p.)
Czytam aktualnie książkę o programowaniu (Symfonię) i w niej autor wspomina czasem że coś w C++ zostało ulepszone lub dodano coś. No i fajnie że poprawiają ten język bo nic nie jest doskonałe, ale gdzie jest napisane co się konkretnie zmieniło lub chociaż informacja że coś się zmieniło?

4 odpowiedzi

+2 głosów
odpowiedź 13 lipca 2015 przez Buby Pasjonat (19,590 p.)
wybrane 14 lipca 2015 przez k222
 
Najlepsza
Hmm...Raz na kilka lat wypuszczany jest zbiór nowinek oraz poprawek i określa się go mianem standardu. Obecnie ostatnim standardem, który został wypuszczony, jest C++11, zwany także jako Cpp0x.

Tutaj w miarę przydatny opis nowinek. Nie mam pojęcia, czy opisane są wszystkie, ale na pewno pokaźna ilość.

https://pl.wikipedia.org/wiki/C%2B%2B11

 

Trwają także prace nad C++14 oraz C++17. Tutaj strona wikipedia na temat C++14:

https://en.wikipedia.org/wiki/C%2B%2B14
komentarz 13 lipca 2015 przez Sebastian Fojcik Nałogowiec (43,040 p.)
Trwają pracę nad C++14 aczkolwiek w tym standardzie piszę wszystkie swoje programy od roku. Tak na prawdę nie wiem jak się deklaruje w którym standardzie języka piszemy, ale wiem, że Visual Studio zawsze dba o to, aby użytkownik pisał w tym najnowszym :)
komentarz 13 lipca 2015 przez Buby Pasjonat (19,590 p.)
Hmm...A mógłbyś podać jakieś dobre źródło, oczywiście oprócz angielskiej wikipedii, w którym mógłbym znaleźć jakiś przykładowy kod oraz opis zmian? :)

Jeśli mógłbyś, to na prawdę byłbym Ci wdzięczny.

Btw. zastanawiam się na instalacją VisualStudio, ponieważ mam darmowy klucz z DreamSpark, jednak jakoś interfejs tworzenia projektów mnie odrzuca. Może masz jakąś dobrą metodę, aby pozbyc się tej niechęci? ;p
komentarz 13 lipca 2015 przez Dash Nałogowiec (29,650 p.)
c++14 to masakra jakaś. 5 caluśkich dni spędziłem żeby pokompilować moje biblioteki, bo jednej się zachciało właśnie tego standardu, a reszta z nowym MinGW wariowała....Czy ludzie nie moga sie opanować i wszystkiego w miarę jednolicie robić ? :/
komentarz 13 lipca 2015 przez adrian17 Ekspert (344,860 p.)

Trwają pracę nad C++14

Prace nad C++14 zakończyły się pół roku temu.

Btw. zastanawiam się na instalacją VisualStudio, ponieważ mam darmowy klucz z DreamSpark,

Nie potrzebujesz Dreamsparka bo VS community jest darmowy (też od pół roku) i ma dokładnie to samo co dawny Professional. Wstrzymaj się jeszcze tydzień, dwudziestego wychodzi VS2015.

c++14 to masakra jakaś.

Wiń biblioteki. No i korzystanie z portu GCC na Windowsa to zawsze ryzyko.

ale wiem, że Visual Studio zawsze dba o to, aby użytkownik pisał w tym najnowszym

Lol. Nie, VS jest właśnie znany ze znacznie wolniejszego niż GCC i Clang przyswajania standardu -  w VS2015 w końcu będą mieli pełne wsparcie dla C++11... prawie. Wsparcie obiecują uzupełnić do końca w późniejszym updacie. (Na pocieszenie, ich zespół biblioteki standardowej radzi sobie znacznie lepiej.)

komentarz 17 lipca 2015 przez Sebastian Fojcik Nałogowiec (43,040 p.)
edycja 19 lipca 2015 przez Sebastian Fojcik

@Buby
Ale jaki interfejs Cię odrzuca? Ten od konsolowych czy Windows Forms i WPF?
Ja pracuje w tym środowisku od lat i nie testowałem innych poza Code::Blocks. Być może zbyt krótko, aby tutaj oceniać jego możliwości. Visual stanie się Twoim przyjacielem dopiero, gdy nauczysz się korzystać z wielu funkcji, mających na celu ułatwienie Ci pisania kodu.
Pokaże jeden przykładzik. Nie mam Code::Blocks, więc jeżeli jest tam identyczna funkcja, to przepraszam:
Po wybraniu metody i wpisania nawiasu otrzymujemy podpowiedź w postaci wszystkich przeładować tej metody. Jest to niezwykle przydatne, bo nierzadko sięganie w tym momencie do dokumentacji biblioteki będzie zbędne.
Przy okazji widać, że metoda "open" przyjmuje jako argument obiekt "string". Kiedyś w Code:Blocks kompilując program z Visuala nie zaakceptował stringa.

Ogólnie to nie mam żadnego interesu w tym, aby Ciebie przekonywać. Choć i tak wiele razy na tym forum wskazywałem na wyższość Visuala nad innymi środowiskami. Przepraszam, już nie będę :-). Sam musisz się przekonać, więc subiektywnie wypróbuj program.
 

@adrian17
Najpewniej pomyliłem pojęcia między wersją języka, a bibliotekami o czym słusznie wspomniałeś. Ale wyjaśnię Ci skąd się wziął mój błąd.

Pół roku temu pisałem program na SPOJ i w moim programie używałem STL i jeszcze jakiś innych matematycznych funkcji z biblioteki standardowej. Często korzystam ze strony c++ reference i jeszcze rzadna funkcja z wykrzyknikiem o nowym standardzie nie przysporzyła mi problemów. Do czasu gdy nie wysłałem programu na SPOJ. W każdym możliwym przypadku występował błąd kompilacji. Dopiero po wybraniu opcji (na SPOJu), że pgoram jest napisany w standardzie C++14.

Od tamtej pory wszystkie swoje kody przesyłam z deklaracją, że piszę je w C++14. Poza tym zaciekawiłem się kiedyś tym standardem i trafiłem na wpis blogowy, gdzie koleś opisywał zmiany i nowości w tym standardzie. Dał tam przykładowy kod. Wkleiłem go i skompilowałem. Program działał. Dla mnie to był jednoznaczny znak, że mogę pisać w najnowszym standardzie języka C++14.

komentarz 17 lipca 2015 przez Buby Pasjonat (19,590 p.)

Kiedyś nie zaakceptował stringa, bo string jest argumentem tej funkcji od wprowadzenia standardu C++11 - wcześniej był to łańcuch znaków języka C - tutaj dokumentacja jak coś.

Z tego co wiem, żeby Code::Blocks rozpoznawał nazwy z C++11 oraz zezwalał na kompilację trzeba dodać argument linkera. :)

A mnie w Visualu jakoś odrzucił interfejs tworzenia projektu - mam świadomość o wielu przydatnych funkcjach jak np. snippety itd, ale ta niechęć jest większa ;p

Może z czasem mi przejdzie i się przełamie :)

komentarz 19 lipca 2015 przez Sebastian Fojcik Nałogowiec (43,040 p.)

Tak racja. Wystarczyłoby dodać do opcji kompilacji takie polecenie:
-std=c++11
Wszystko by wtedy śmigało :)
Tak mi przynajmniej napisali na forum cpp0x.pl 

+1 głos
odpowiedź 13 lipca 2015 przez Sebastian Fojcik Nałogowiec (43,040 p.)
edycja 13 lipca 2015 przez Sebastian Fojcik

Jeśli czytasz sobie w zaciszu domowym Symfonię, to raczej jeszcze długo wszelkie zmiany nie będą dla Ciebie aż tak istotne. Ale jeśli jesteś ciekawy, to mogę dodać, że uruchamiając środowisko Visual, w ekranie powitalnym mamy odnośniki do stron, gdzie możemy przeczytać o konkretnych nowinkach, zmianach, nowościach.

Miałem taką sytuację, gdy zaczynałem programować (od początku w Visual), to używałem często funkcji getch() z biblioteki <conio.h>. Jakież było moje zdziwienie, gdy w pewnym momencie wywołanie owej funkcji dawało mi warning przy kompilacji. Wtedy jeszcze nie ogarniałem co się dzieje, a wystarczyło przeczytać w konsoli kompilacji powód warninga. Miałem wyraźnie napisane coś w stylu: "nazwa 'getch jest zdeprecyzowana i może niebawem wyjść z użycia. Zalecamy korzystanie z '_getch' w zamiast.".

Tak jest i teraz. W Code::Blocks w kursach Pana Mirosława funkcja getch() jeszcze przeszła, ale jeśli chcecie pisać w najnowszym standardzie języka i bibliotek, to musicie być na bierząco. Visual Studio w tym pomaga ;)

Obecnie wywołanie funkcji getch() zgodnie z zapowiedziami Microsoftu nie powoduje już warninga, ale błąd kompilacji.

Ale wcale nie jest to straczne, bo jak widać, program zasugerował mi od razu nową nazwę "_getch". Tak więc używam wszędzie _getch();

komentarz 13 lipca 2015 przez Pascal Bywalec (2,720 p.)
To ekran powitalny jest po Polsku oż w mor...
komentarz 17 lipca 2015 przez Sebastian Fojcik Nałogowiec (43,040 p.)

Nic nie stoi na przeszkodzie, aby pobrać ze strony Microsoftu polską paczkę językową. Potem wystarczy ją wybrać w opcjach.

Jednak czasami może to sprawiać problemy, gdy kompilator wypisuje błąd w języku polskim, a ty chcesz ten błąd wpisać w Google. Oczywiście aby znaleźć rozwiązanie, należy wpisać swój error po angielsku.

Czasami są też problemy, gdy musisz coś zmienić w opcjach. Masz wejść w zakładkę "Linker", a okazuje się, że w polskiej wersji nazywa się to "Konsolidator" :D
I tego typu niuanse :-)

komentarz 17 lipca 2015 przez Pascal Bywalec (2,720 p.)
Osobiście wolał bym Łacine kuchenną ale Polski język też może być :)
+1 głos
odpowiedź 13 lipca 2015 przez MrWeb Stary wyjadacz (10,200 p.)
0 głosów
odpowiedź 13 lipca 2015 przez criss Mędrzec (172,590 p.)

Nowinkami bym tego już nie nazwał, ale Kacper Kołodziej nieźle opisał ficzery z c++11 na swoim blogu: 

http://kacperkolodziej.pl/

Podobne pytania

0 głosów
1 odpowiedź 274 wizyt
pytanie zadane 31 grudnia 2022 w C i C++ przez Jerzy Użytkownik (930 p.)
+1 głos
1 odpowiedź 586 wizyt
+3 głosów
2 odpowiedzi 348 wizyt

92,584 zapytań

141,434 odpowiedzi

319,671 komentarzy

61,968 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...