C++ (C plus plus) je programski jezik visokog nivoa kojeg je kreirao danski programer Bjarne Stroustrup kao nastavak programskog jezika C, ili kao "C sa klasama". C++ je objektno orijentirani programski jezik (OOP). C++ je standardiziran od strane Međunarodne organizacije za standardizaciju ili ISO, te je najnovija verzija ovog jezika izada u decembru 2017. godine kao ISO/IEC 14882:2017 (neformalno poznata kao verzija C++17).

C++
Programska ParadigmaObjektno-Orijentirani (OO)
Pojavio se1985; prije 39 godina (1985)
TvoracBjarne Stroustrup
Sistem tipovanjastatični, slabi, nesigurni
Glavne implementacijeGNU Kolekcija Kompajlera, MS Visual C++, Borland C++Builder
DijalektiANSI C++ 1998, ANSI C++ 2003
UtjecaliC, Simula, Ada 83, CLU
Utjecao naAda 95, C#, Java

Primjeri programiranja u C++ uredi

Kao najpoznatiji i ujedno najlakši program u svakom programskom jeziku je program Hello World, ovako izgleda kôd:

#include <iostream>

using namespace std;

int main()   // Ovo je komentar
{
  cout << "Hello, World!" << endl; // Može se koristiti umjesto endl, "\n".
  return 0; // Ovo nije obavezujuće, ali ako koristimo funkciju tipa void(), ne treba se pisati.
}

Imamo i zabavne matematičke programe, kao da se izračuna površina jednakostraničnog trougla:

#include <iostream>

using namespace std;

int main()
{
    int osnova, stranice, visina;
    osnova == stranice; // Jednakostranični trougao ima sve stranice jednake, pa zbog toga mu je osnova jednaka stranicama.
    cin >> osnova >> visina;
    
    int povrsinaTrougla = (osnova * visina) / 2;
    cout << "Površina trougla iznosi: " << povrsinaTrougla << endl;
    return 0;
}

I imamo malo teže tipa string programe, kao da se obrne unesena rečenica:

#include <iostream>
#include <bits/stdc++.h>

using namespace std;

int main()
{
    string recenica;
    getline(cin, recenica); // getline je isto kao cin, samo se koristi kada želimo ubaciti neku rečenicu umjesto riječi.
    
    reverse(recenica.begin(), recenica.end());
    cout << recenica << "\n";
    return 0;
}

Dati kod deklarira funkciju main, sa povratnim tipom "int" (integer, cijeli broj) koji ne prima parametar "()", i u njoj koristi objekat izlaznog toka cout, deklariran u biblioteci iostream deklariranog unutar standardnog namespace-a.

Programski jezik C++ podržava tzv. objektno orijentisano programiranje što je programerima omogućilo da lakše definišu kompleksnije programe. Jezik C++ bio je jedan od prvih sa podrškom za klase (način na koji se definišu objekti). Slijedi primjer jednog jednostavnog programa sa definisanom klasom Osoba, učitavanjem podataka u objekat klase Osoba i čitanjem podataka iz istog objekta.

#include <iostream>
#include <string>
using namespace std;

class Osoba
{
private:
    // polja klase
    string ime, prezime;
    int godine;
public:
    // konstruktor klase metoda koja ima isto ime kao i klasa
    Osoba() {}
    
    // drugi konstruktor
    Osoba(string ime, string prezime, int god)
    {
        this->ime = ime;
        this->prezime = prezime;
        this->godine = god;
    }
  
    // metoda u kojoj se realizuje brisanje objekta iz memorije (destruktor)
    ~Osoba() {}
    
    // metoda koja ispsisuje podatke klase Osoba
    void pisi()
    {
        cout << "Ime: "<< ime << endl
             << "Prezime: " << prezime << endl
             << "Godine: " << godine << endl;
    }
    
    // metoda učitava podatke u klasu
    void citaj()
    {
        cout << "Ime? ";
        cin >> ime;
        cout << "Prezime? ";
        cin >> prezime;
        cout << "Godine? ";
        cin >> godine;
    }
};

int main()
{
    Osoba a("petar", "petrovic", 20); 
    Osoba b;
    b.citaj();
    a.pisi(); b.pisi();
}

Također pogledajte uredi

Vanjski linkovi uredi

Reference uredi