Historia C ++, charakterystyka, typy danych, przykłady

4735
Alexander Pearson

do++ jest ulepszoną i rozszerzoną wersją języka programowania C, który został opracowany przez Stroustrup w 1979 roku w ramach projektu doktoranckiego. Stroustrup zaprojektował to, co nazwał „C z klasami”, które później nazwano C ++, ponieważ uważał, że istniejące języki programowania mają ograniczenia i nie są najlepsze dla projektów na dużą skalę.

Dlatego użył C do opracowania języka programowania, którego szukał, ponieważ C był językiem efektywnym i szybkim w działaniu..

Źródło: pixabay.com

C ++ to język programowania ogólnego przeznaczenia, który jest dopracowany i potężny. Ten skompilowany język o dowolnej formie najlepiej nadaje się dla programistów na poziomie średnio zaawansowanym.

Jednak ci, którzy chcą zacząć programować w C ++, przekonają się, że mogą szybko nauczyć się koncepcji programowania, które zajmą im długą drogę w karierze..

Jest kompatybilny z programowaniem obiektowym, zachowując wszystkie jego cechy. Te koncepcje sprawiają, że język C ++ jest inny i jest używany głównie do tworzenia aplikacji w łatwy i konceptualny sposób..

Indeks artykułów

  • 1 Historia
    • 1.1 Projekt i realizacja
    • 1.2 Pierwsza wersja
    • 1,3 C 2,0
    • 1.4 Wersja znormalizowana
    • 1.5 Najnowsze aktualizacje
  • 2 Charakterystyka C.++
    • 2.1 Popularny język
    • 2.2 Zorientowany obiektowo
    • 2.3 Proceduralne
    • 2.4 Programowanie strukturalne
    • 2.5 Zarządzanie pamięcią
    • 2.6 Wskaźniki
    • 2.7 Język kompilowany
  • 3 Typy danych w C++
    • 3.1 - Podstawowa
    • 3.2 - Drugorzędne
    • 3.3 - Zdefiniowane przez użytkownika
  • 4 Do czego służy C ++? Aplikacje
    • 4.1 Aplikacje
    • 4.2 Systemy operacyjne
    • 4.3 Kompilatory
    • 4.4 Gry
    • 4.5 Przeglądarki internetowe
    • 4.6 Internet przedmiotów
    • 4.7 Chmura / systemy rozproszone
    • 4.8 Dostęp do baz danych
  • 5 przykładów
    • 5.1 Biblioteki
  • 6 Zalety
    • 6.1 Prędkość
    • 6.2 Blisko sprzętu
    • 6.3 Wydajność
    • 6.4 Swoboda wyboru stylów programowania
    • 6.5 Umiejętność rozkładania złożonych problemów
    • 6.6 Możliwość wykrycia błędów przed wykonaniem
  • 7 Wady
    • 7.1 Stosowanie wskaźników
    • 7.2 Kwestie bezpieczeństwa
    • 7.3 Brak śmieciarki
    • 7.4 Brak nitki
    • 7.5 Programy skompilowane
    • 7.6 Może być złożone
  • 8 Odniesienia

Fabuła

Projektowanie i wdrażanie

C ++ został zaprojektowany i wdrożony w 1980 roku przez Bjarne'a Stroustrupa z AT&T Bell Labs, wspaniale łącząc koncepcje programowania proceduralnego i obiektowego..

W języku C operator ++ służy do inkrementacji zmiennej, co jest wyrazem idei Stroustrupa, że ​​C ++ było następną generacją języka C.

Pierwsze wydanie

C ++ został wydany w 1985 roku po raz pierwszy na rynku. W 1986 Stroustrup opublikował swoją słynną książkę pt Język programowania C.++, staje się podręcznikiem referencyjnym języka.

C 2.0

Najważniejszym wydaniem C ++ było C 2.0 z 1989 roku, udokumentowane przez Ellisa i Stroustrupa w Podręcznik referencyjny z komentarzami++. Był to język całkowicie obiektowy.

Wersja standardowa

Pierwsza znormalizowana wersja, C ++ 98, została wydana w 1998 roku. Ten międzynarodowy standard dla C ++ został opracowany przez American National Standards Institute (ANSI) i Międzynarodową Organizację Normalizacyjną (ISO).

W 2003 roku opublikowano następujący standard C ++ 03 z zamiarem poprawienia błędów zidentyfikowanych w C ++ 98 i zapewnienia większej przenośności i spójności języka.

Ostatnie aktualizacje

Następna duża aktualizacja języka pojawiła się w 2011 roku i została nazwana C ++ 11. Dodano kilka funkcji poprawiających wydajność środowiska wykonawczego..

Następnie wydano C ++ 14, w którym dokonano pewnych ulepszeń i naprawiono błędy C ++ 11. Następną wersją wydaną w 2017 roku był C ++ 17, który ma kilka nowych funkcji i znacznie bardziej rozbudowaną bibliotekę standardową..

Charakterystyka C.++

Popularny język

C ++ jest szeroko stosowany przez programistów, głównie w aplikacjach. Zawiera wszystkie ważne części, takie jak język centralny, który zapewnia wszystkie wymagane bloki programistyczne, takie jak zmienne, typy danych, literały itp..

Jest to czwarty najpopularniejszy język programowania według indeksu społeczności programistów TIOBE.

Zastosowanie C ++ sprawia, że ​​jest to najwygodniejszy język ze względu na swoje właściwości. Jest to pierwszy język startowy dla każdego programisty, który jest zainteresowany pracą z językami programowania. Łatwo się go nauczyć, ponieważ jest to język oparty wyłącznie na pojęciach.

Jego składnia jest bardzo prosta, co ułatwia pisanie, a błędy można łatwo replikować. Przed użyciem jakiegokolwiek innego języka programiści woleli najpierw nauczyć się C ++, a dopiero potem używać innych języków..

Jednak większość programistów stara się trzymać C ++ ze względu na jego szeroką gamę zastosowań i zgodność z wieloma platformami i oprogramowaniem..

Zorientowany obiektowo

Główną aktualizacją z C do C ++ jest programowanie obiektowe. Oznacza to, że uwaga skupia się na „obiektach” i obchodzeniu się z nimi..

Postępuj zgodnie z koncepcjami polimorfizmu, dziedziczenia, hermetyzacji i abstrakcji, ułatwiając rozwój i konserwację.

Proceduralny

C ++ obsługuje koncepcję procedur i podprogramów, które zamykają segmenty kodu w blokach wielokrotnego użytku, które można „wywołać” w celu wykonania poszczególnych zadań.

Procedury i podprogramy są w C ++ znane jako funkcje. Funkcja może przyjmować zero lub więcej parametrów i zwracać zero lub wartość.

Programowanie strukturalne

Kod w C ++ jest modułowy, z obsługą funkcji, klas i obiektów, moduły są swobodnie łączone.

Instrukcje kontroli przepływu w C ++ są podobne do tych, które można znaleźć w wielu innych strukturalnych językach programowania. Są to if-else do zaimplementowania logiki decyzyjnej oraz for, while i do-while do implementacji iteracji lub pętli..

Zarządzanie pamięcią

C ++ obsługuje dynamiczną alokację pamięci. Dzięki temu w dowolnym momencie można zwolnić przydzieloną pamięć.

Wskaźniki

Są to zmienne przechowujące adres innej zmiennej. Wskaźnik wskazuje miejsce w pamięci zmiennej. C ++ obsługuje wskaźniki, aby zapewnić rozwiązania wielu problemów, które wymagają dostępu do lokalizacji pamięci.

Język kompilowany

Przed uruchomieniem program C ++ musi zostać przetłumaczony na natywne instrukcje maszyny docelowej przez program zwany kompilatorem. Żaden program C ++ nie może działać bez kompilacji. Kompilator kompiluje program C ++, aby można go było później uruchomić.

Typy danych w C++

- Podstawowy

Int

Służy do przechowywania liczb całkowitych. Ilość zajmowanej pamięci zależy od kompilatora (32 lub 64 bity). Zajmuje 4 bajty pamięci podczas pracy z 32-bitowym kompilatorem.

Pływak

Służy do przechowywania ułamków do 7 cyfr dziesiętnych. Jest znany jako typ zmiennoprzecinkowy o pojedynczej precyzji. Zajmuje 4 bajty pamięci.

Zwęglać

Służy do przechowywania zestawu wszystkich znaków. Może zawierać litery alfabetu, cyfry, a także znaki specjalne. Zajmuje 1 bajt pamięci, będąc najmniejszą adresowalną jednostką w maszynie.

Podwójnie

Służy do przechowywania ułamków do 15-16 cyfr dziesiętnych. Zwykle określany jako typ zmiennoprzecinkowy podwójnej precyzji.

Pusty (Null)

Wskazuje zero lub brak wartości zwracanej. Zwykle używany do przypisywania wartości null podczas deklarowania funkcji.

Bool

Ten typ danych odnosi się do wartości logicznej lub logicznej. Może mieć wartość prawda lub fałsz.

- Wtórny

Ustalenia

Jest to zbiór danych, które mają ten sam typ danych, do których dostęp uzyskuje się za pośrednictwem wspólnej nazwy.

Wskaźniki

Zasadniczo są to zmienne używane do przechowywania adresu pamięci innej zmiennej.

funkcje

Jest to grupa zdań, które wykonują określone zadanie. Funkcje to wbudowane lub zdefiniowane przez użytkownika biblioteki.

- Określony przez użytkownika

Struktury

Jest to rodzaj danych, w których można utworzyć zbiór różnych typów danych i uzyskać do nich dostęp za pośrednictwem obiektu.

Unia

Zapewnia możliwość przechowywania różnych typów danych w tej samej lokalizacji pamięci.

Do czego służy C ++? Aplikacje

Aplikacje

Wiele aplikacji w systemach Adobe jest tworzonych w języku C ++, takich jak Illustrator, Photoshop, Adobe Premiere i Image Ready.

System operacyjny

C ++ jest używany we wszystkich głównych systemach operacyjnych, takich jak Linux, Windows i macOS, ponieważ jest to język programowania niskiego poziomu.

Kompilatory

Większość kompilatorów jest napisana w języku C ++. Również kompilatory używane do kompilowania innych języków, takich jak C #, Java itp..

Gry

Służy do eliminacji złożoności gier 3D, pomagając w optymalizacji zasobów. Ponadto jest kompatybilny z opcją multiplayer w sieciach.

Przeglądarki internetowe

Pozwala na szybkie wykonanie i odwzorowanie grafiki, co jest krytyczne dla obecnych użytkowników, którzy wymagają treści, które mogą szybko pojawić się w przeglądarkach internetowych. C ++ był używany do tworzenia przeglądarek internetowych Google Chrome i Mozilla Firefox.

Internet przedmiotów

Różne produkty Internetu rzeczy, takie jak inteligentne zegarki, samochody, pralki, routery i przełączniki, używają języka C ++, ponieważ wymagają kodu, który jest jak najbliżej sprzętu.

Chmura / systemy rozproszone

Jest używany w chmurze w systemach pamięci masowej i systemach rozproszonych, gdzie skalowalne systemy plików muszą ściśle współpracować ze sprzętem, a zgodność z różnymi maszynami jest również krytyczna.

Dostęp do baz danych

Służy do tworzenia oprogramowania bazodanowego o otwartym kodzie źródłowym. Bardzo popularne oprogramowanie do administrowania bazami danych używane w organizacjach, MySQL, zostało napisane w języku C ++ dzięki oferowanym korzyściom.

Istnieją inne aplikacje oparte na dostępie do oprogramowania bazodanowego, którymi są Wikipedia, Yahoo, YouTube, Quora itp..

Przykłady

Ten program otrzymuje od użytkownika dodatnią liczbę całkowitą i przechowuje ją w zmiennej n. Następnie wykonywana jest pętla for, która sprawdza, czy wprowadzona liczba jest doskonale podzielna przez i, czy nie.

Pętla for zaczyna się od wartości początkowej i równej 2, zwiększając wartość i z każdą iteracją. Jeśli liczba wprowadzona przez użytkownika jest całkowicie podzielna przez i, isPrime jest ustawiane na false i liczba nie będzie liczbą pierwszą.

Jeśli jednak liczba ta nie jest w pełni podzielna przez i, aż do spełnienia warunku testu i <= n / 2 sea verdadera significa que solo es divisible entre 1 y ese mismo número. Entonces, el número dado es un número primo.

Biblioteki

Programiści mają dostęp do wielu wbudowanych funkcji udostępnianych przez język C ++. Oszczędza to czas i przyspiesza rozwój. Niektóre pliki nagłówkowe C ++ z dostarczonymi funkcjami to:

- iomanip: zawiera programy obsługi strumieni, które formatują strumienie danych.

- iostream: zawiera standardowe funkcje wejścia i wyjścia.

- cstdlib: zawiera funkcję konwersji liczb na tekst i odwrotnie,

- cmath - zawiera funkcje biblioteki matematycznej, alokację pamięci, liczby losowe i różne inne funkcje narzędziowe.

- fstream: zawiera funkcje, które wykonują wprowadzanie i wyprowadzanie plików na dysk.

- ctime: zawiera funkcję obsługującą czas i datę.

- pamięć: zawiera klasy i funkcje używane przez bibliotekę standardową C ++ do przydzielania pamięci.

Korzyść

Prędkość

Ponieważ C ++ jest rozszerzoną wersją C, który jest językiem programowania niskiego poziomu, jest to jeden z najszybszych dostępnych języków. Dzięki temu jest przydatny w tych obszarach, w których wymagana wydajność jest krytyczna..

Blisko sprzętu

C ++ to jeden z języków programowania, który jest najbliższy sprzętowi. Jest to bardzo korzystne w tych przestrzeniach, w których oprogramowanie musi mieć ścisły związek ze sprzętem, aby efektywnie obsługiwać niskopoziomowe wsparcie..

Wydajność

C ++ ma standardową bibliotekę szablonów, które mogą być szeroko stosowane podczas kodowania. Biblioteki te zapewniają wydajne algorytmy, które pozwalają programiście zaoszczędzić czas i wysiłek, który w przeciwnym razie zostałby zmarnowany na tworzenie kodu..

Swoboda wyboru stylów programowania

C ++ obsługuje około siedmiu różnych stylów kodowania, co czyni go wielomodelowym językiem programowania. W ten sposób możesz wybrać styl, który pasuje do konkretnego przypadku użycia, bez konieczności używania obiektów.

Umiejętność rozwiązywania złożonych problemów

C ++ może intuicyjnie rozwiązywać złożone problemy, tworząc obiekty. Ponadto funkcje C ++ umożliwiają podzielenie kodu na bloki kodu, które są przejrzyste, łatwe do zrozumienia oraz łatwe do testowania i modyfikowania..

Możliwość wykrycia błędów przed wykonaniem

C ++ ma typ statyczny, co oznacza, że ​​kompilator nie przyjmuje żadnych założeń co do tego, co pisze programista. Zaletą jest to, że kompilator może wychwycić błędy i awarie przed wykonaniem, co może zaoszczędzić czas na dłuższą metę.

Niedogodności

Stosowanie wskaźników

Wskaźniki są pojęciem stosunkowo trudnym do zrozumienia, a także zajmują dużo pamięci. Niewłaściwe użycie wskaźnika może spowodować awarię lub nienormalne zachowanie systemu.

Ważnym problemem jest sytuacja, gdy dane wskazują to samo z dwóch różnych punktów początkowych, co powoduje poważny problem, generując mylące problemy w kodowaniu.

Problemy z bezpieczeństwem

Chociaż programowanie zorientowane obiektowo zapewnia duże bezpieczeństwo przetwarzanych danych, nadal występują pewne problemy z bezpieczeństwem związane z dostępnością funkcji zaprzyjaźnionych, zmiennych globalnych i wskaźników.

Nie ma śmieciarki

C ++ daje użytkownikowi pełną kontrolę nad zarządzaniem pamięcią komputera. Brakuje funkcji garbage collectora do automatycznego odfiltrowywania niepotrzebnych danych i dlatego nie obsługuje dynamicznej alokacji pamięci.

Brak wątku

C ++ nie obsługuje wbudowanych wątków. Pojęcie wątku jest stosunkowo nowe w C ++, ponieważ pierwotnie nie istniało. Teraz C ++ jest w stanie obsługiwać funkcje lambda.

Skompilowane programy

Jako język kompilowany, pliki wykonywalne utworzone przez kompilator z kodu źródłowego nie są przenośne i będą działać tylko na platformie docelowej (sprzęt plus system operacyjny), dla której zostały skompilowane, lub na kompatybilnej platformie binarnej..

Może być skomplikowane

C ++ może być złożony, ponieważ dopuszcza klasy, które są funkcjami o tej samej nazwie. Dlatego należy stosować system obsługi symboli. Ponadto jest to skomplikowane w przypadku bardzo dużego programu wysokiego poziomu. C ++ jest powszechnie używany w aplikacjach specyficznych dla platformy.

Bibliografia

  1. Simplilearn (2020). Programowanie w C ++ dla początkujących: historia, korzyści i aplikacje. Zaczerpnięte z: simplilearn.com.
  2. Educba (2020). Zastosowania C ++ w prawdziwym świecie. Zaczerpnięte z: Educba.com.
  3. Dmitrii Rassokhin (2020). Język programowania C ++ w cheminformatyce i chemii obliczeniowej. Journal of Cheminformatics. Zaczerpnięte z: jcheminf.biomedcentral.com.
  4. Edureka! (2020). Jakie jest 10 najważniejszych funkcji języka C ++? Zaczerpnięte z: edureka.co.
  5. Aman Goel (2020). Język C ++: funkcje, zastosowania, aplikacje i zalety. Włamać się. Zaczerpnięte z: hackr.io.
  6. Steemit (2020). C ++: Naucz się kodować. Historia, zalety, wady języka C ++. Zaczerpnięte z: steemit.com.
  7. Data Flair (2019). Naucz się typów danych w C i C ++ z przykładem w zaledwie 4 minuty. Zaczerpnięte z: data-flair.training.

Jeszcze bez komentarzy