Razlika između verzija stranice "C++"

S Wikipedije, slobodne enciklopedije
[pregledana izmjena][pregledana izmjena]
Uklonjeni sadržaj Dodani sadržaj
mNo edit summary
No edit summary
oznaka: uređivanje izvornog kôda (2017)
Red 1: Red 1:
{{Nedostaju izvori}}
{{Infokutija programski jezik
{{Infokutija programski jezik
|ime = C++
|ime = C++
Red 114: Red 115:
}
}
</syntaxhighlight>
</syntaxhighlight>

Na [[Internet]]u se moze naći veliki broj knjiga i tutorijala na temu C++ i većina njih su besplatni, kao na [[YouTube|YouTubeu]] kod poznatog programera Buckyja Robertsa<ref>{{Cite web|url=https://www.youtube.com/user/thenewboston|title=thenewboston - YouTube|website=www.youtube.com|accessdate=2020-10-04}}</ref> koji je kreirao mnogo tutorijala ne samo za C++<ref>{{Cite web|url=https://www.youtube.com/playlist?list=PLAE85DE8440AA6B83|title=C++ Programming Tutorials Playlist - YouTube|website=www.youtube.com|accessdate=2020-10-04}}</ref>, već i za druge programske jezike.


== Također pogledajte ==
== Također pogledajte ==

Verzija na dan 4 mart 2021 u 11:16

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

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).

Primjeri programiranja u C++

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

Vanjski linkovi

Reference