C++

Aktualizacja: 08.12.2024

Zobacz polecane:

Polecane kursy video Kursy Polecane książki Książki

Zastosowanie

C++ to wszechstronny język obiektowy, który umożliwia tworzenie wieloplatformowych aplikacji, pod warunkiem przestrzegania odpowiednich zasad. Jako rozszerzenie języka C, C++ wprowadza programowanie obiektowe oraz szereg usprawnień, takich jak obsługa wątków, wyrażenia lambda, szablony, typ auto czy pętle for-range. Co więcej, kod napisany w C zazwyczaj można bezproblemowo używać w C++, co zwiększa jego uniwersalność.

C++ znajduje szerokie zastosowanie w różnych dziedzinach, szczególnie tam, gdzie kluczowa jest wydajność i niskie zużycie zasobów. Przykłady zastosowań obejmują:

C++ jest szeroko stosowany w największych światowych firmach, takich jak Adobe, Facebook, Amazon, IBM czy Intel.

Warto wspomnieć też o frameworku Qt, który rozszerza język C++ i ułatwia z nim pracę.

Top 10 projektów na Github wykorzystujących C++

Github to system kontroli wersji. Możesz znaleźć tam projekty open source w każdej technologii. Zobacz jakiego typu projekty wykorzystują język C++ oraz jak wygląda C++ od strony kodu. Zwróć uwagę na pliki z rozszerzeniem .cc lub .cpp.

1# tensorflow 188,889
2# react-native 121,297
3# electron 116,139
4# terminal 97,559
5# godot 95,656
6# bitcoin 82,677
7# opencv 81,396
8# llama.cpp 77,339
9# gpt4all 72,933
10# swift 68,281

Poziom skomplikowania

C++ uchodzi za język trudniejszy (na początek) od wielu nowoczesnych języków programowania. Jego semantyka, wskaźniki, zarządzania pamięcią może się wydawać mniej przyjazna dla początkujących, jednak w porównaniu do języka C, C++ jest dużo bardziej przyjazny np. dzięki funkcjom takim jak inteligentne wskaźniki czy dedukcja typów.

C++ jest szczególnie ceniony za:

Pomimo wysokiego poziomu trudności, znajomość C++ daje solidne podstawy w programowaniu i otwiera drogę do zrozumienia innych języków. Mimo to, dla osób rozpoczynających naukę programowania, bardziej odpowiednim wyborem może być język o wyższym poziomie abstrakcji, jak np. Python.

Składnia

Przykładowa implementacja wyszukiwania binarnego:

BinarySearch.cc lub .cpp
// C++
#include <iostream>
using namespace std;

int binarySearch(string array[], string x) {
  int start = 0;
  int end = sizeof(array) - 1;
  while (start <= end) {
    int middle = (start + end) / 2;
    if (array[middle] == x) {
      return middle;
    }
    if (array[middle] > x) {
      end = middle - 1;
    } else {
      start = middle + 1;
    }
  }
  return -1;
}

int main() {
  string library[] = {"Algorytmy", "Czysty kod", "Harry Potter", "Illuminati", "Wzorce projektowe", "..."};
  /* Dla wyszukiwania binarnego
  tablica musi być posortowana rosnąco */

  string x = "Illuminati";
  int foundXat = binarySearch(library, x);

  cout << "Znaleziono \"" + x + "\" na pozycji " + to_string(foundXat)<< endl;
  // Znaleziono "Illuminati" na pozycji 3
}

Statystyki

Dane aktualne na dzień: 01.04.2025

Według TIOBE index, język C++ jest na 2 pozycji pod względem popularności. W ubiegłym roku był na pozycji 3.

Na Stack Overflow jest 6 najczęściej tagowanym językiem z 816,570 zapytaniami.

Na Github zajmuje 4 pozycję z liczbą 980,623 projektów, z których 2,863 ma więcej niż 1000 gwiazdek.

Jeśli chodzi o organizowane spotkania to według Meetup.com jest to 9 co do wielkości społeczność z liczbą 194 grup, w skład których wchodzi 128,557 członków na całym świecie. W Polsce mamy odpowiednio 9 grup, w skład których wchodzi 5,691 członków.

Meetupy C++ są kategoryzowane razem z językiem C. Mimo to widać, że grup organizujących spotkania dla społeczności C/C++ jest stosunkowo niewiele.

Przyszłość języka

C++ pozostaje jednym z najważniejszych języków programowania, mimo że lata jego największej popularności już minęły. Dzięki ciągłym ulepszeniom np. wprowadzeniu nowych standardów, jak C++11, C++17 czy C++20, język ten jest nadal aktywnie rozwijany. Jego ostatnia wersja C++23 (ISO/IEC 14882:2024) została wydana 19 października 2024.

Rozwój technologii VR (Virtual Reality) i AR (Augmented Reality), w których wydajność jest kluczowa, przyczynia się do rosnącego znaczenia C++. Wysoka wydajność oraz kontrola nad zasobami sprawiają, że język ten pozostaje niezastąpiony w wielu zastosowaniach.

Najlepsze kursy video do nauki C++

na platformie Udemy:

Flaga angielska Kursy w języku angielskim Flaga angielska

(W języku polskim niżej)


Język kursu - angielski Okładka kursu

Beginning C++ Programming - From Beginner to Beyond

Obtain Modern C++ Object-Oriented Programming (OOP) and STL skills. C++14 and C++17 covered. C++20 info see below.

Czas trwania: 46 total hours 334706 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2024-12-19
4.6 / 5
Liczba ocen: 75325

Język kursu - angielski Okładka kursu

The C++20 Masterclass : From Fundamentals to Advanced

Learn and Master Modern C++ From Beginning to Advanced in Plain English : C++11, C++14, C++17, C++20 and More!

Czas trwania: 115 total hours 33861 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2025-03-06
4.46 / 5
Liczba ocen: 4967

Język kursu - angielski Okładka kursu

Learn C++ Programming -Beginner to Advance- Deep Dive in C++

Classroom and Hands-on sessions- Features of C++ 11 , Exception Handling and STL - for Both Academics and Industry

Czas trwania: 30.5 total hours 96191 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2024-09-17
4.62 / 5
Liczba ocen: 28869

Język kursu - angielski Okładka kursu

Quick Start to Modern C++ for Programmers [2024 Edition]

From C++11 to C++23: Mastering C++ for the Experienced Programmer. Always kept up-to-date.

Czas trwania: 8.5 total hours 2284 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2024-08-02
4.65 / 5
Liczba ocen: 371

Flaga polska Kursy w języku polskim Flaga polska

Język kursu - polski Okładka kursu

C++ od Podstaw do Eksperta

Oszczędź swój czas i naucz się szybko składni języka C++ z kursem, który został stworzony specjalnie dla początkujących.

Czas trwania: 22.5 total hours 14504 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2025-01-06
4.23 / 5
Liczba ocen: 2176

Język kursu - polski Okładka kursu

Programowanie w języku C++ - od A do Z

Naucz się jednego z najpopularniejszych języków programowania i zacznij pisać praktyczne programy w języku C++

Czas trwania: 9 total hours 1006 zapisanych uczestników
Beginner Level Ostatnia aktualizacja: 2025-01-21
4.51 / 5
Liczba ocen: 184

Język kursu - polski Okładka kursu

Programowanie w C++ od podstaw

Najlepsze źródło wiedzy o podstawach i fundamentach C++ w najnowszej wersji (C++17)

Czas trwania: 15 total hours 1286 zapisanych uczestników
Beginner Level Ostatnia aktualizacja: 2024-04-26
4.44 / 5
Liczba ocen: 112

Język kursu - polski Okładka kursu

Programowanie obiektowe w C++

Kurs, który przybliży Ci obiektówkę na tyle, byś mógł zacząć programować obiektowo w C++ i świetnie się w tym czuć

Czas trwania: 12.5 total hours 653 zapisanych uczestników
Beginner Level Ostatnia aktualizacja: 2024-04-26
4.39 / 5
Liczba ocen: 70

Inne kursy video na UdemyZobacz inne kursy video na Udemy

Najlepsze książki do nauki C++

od wydawnictwa Helion:

Następca popularnej Symfonii C++:

Inne: :

Najlepsza książka o wzorcach projektowych z przykładami w C++:

Zobacz inne książki w kategorii C++