C++

Fra Wikipedia, den frie encyklopedi

Gå til: navigasjon, søk

C++ er et populært høynivå programmeringsspråk som er en utvidelse av språket C. C++ ble opprinnelig kalt «C with Classes» og ble utviklet og implementert av dansken Bjarne Stroustrup omkring 198385, som da jobbet for AT&T Bell Labs.

C++ er et multiparadigmespråk, med støtte for funksjonell programmering, objektorientert programmering (OOP), dataabstraksjon og generisk programmering. Populariteten skyldes både at det bygger på C og at det er implementert for de fleste operativsystem.

Innhold

[rediger] Historie

Navnet C++ ble lansert av Rick Mascitti sommeren 1983. Det er et ordspill rundt forbedret C; i begge språkene så kan «C++» tolkes som «C pluss en».

Tidlige versjoner av «C with Classes» har vært i bruk siden rundt 1980. Den første bruken av C++ utenfor forskningsmiljøet var i juli 1983.

Etterhvert som språket ble populært, begynte man på en standardiseringsprosess. Den amerikanske standardiseringsorganisasjonen ANSI startet sitt arbeid i desember 1989. I juni 1991 ble denne komiteen tatt opp av den internasjonale standardiseringsorganisasjonen ISO. I april 1995 kom det første offentlige utkastet til en standard, og i 1998 ble språket både en ISO- og ANSI-standard.

Standardiseringen av språket inkluderer også standardbiblioteket.

[rediger] Teknisk overblikk

I følge standarden så består C++ av to deler: Kjernespråket og standardbiblioteket. Biblioteket inkluderer det meste av det som tidligere var kjent som Standard Template Library (STL) og C-bibliotekene. Mange andre biblioteker eksisterer også for språket, men disse er ikke en del av standarden.

[rediger] Kjernespråket

Kjernespråket bygger på C. Egenskaper ved C++, som C ikke har, inkluderer new- og delete-operatorene, bool som datatype, referanser, bruken av const, inline-funksjoner, default-argumeter, overlagring av funksjoner, klasser (inkl. arv, medlemsfunksjoner, virtuelle funksjoner, abstrakte klasser, destruktorer og konstruktorer), overlagring av operatorer, ::-operatoren, unntakshåndtering, typeidentifikasjon under kjøring, definert typekonvertering, og namespaces, for å hindre navnekonflikter.

C++ har støtte for templates, det vil si at én og samme klasse eller funksjon kan utføre like handlinger på forskjellige datatyper, noe som øker muligheten for å gjenbruke kode.

C++ sjekker også typer strengere enn C i noen tilfeller.

Kommentarer som starter med to skråstreker ("//") var opprinnelig en del av C sin forgjenger BCPL, og ble tatt inn igjen i C++.

[rediger] Standardbiblioteket

I tillegg til C-bibliotekene med matematiske funksjoner og annet, har C++ med Standard Template Library (STL). Her tilbys blant annet generelle lagringstyper (vector, list, array og annet), strenger, iteratorer (generelle pekere inn i en lagringstype), I/O og algoritmer. Generisk kode gjør at man kan skrive algoritmer som virker på en hvilken som helst slags lagringstype. For eksempel så virker de innebygde sorteringsalgoritmene på både lister og vektorer.

[rediger] Hallo, verden! (Hello, world)

#include <iostream>
 
int main()
{
    std::cout << "Hallo, verden!" << std::endl;
    return 0;
}

Kommentert:

#include <iostream> // inkluderer standardheader iostream
 
int main() // her starter programmet å kjøre
{
    // cout og endl ligger i navnerommet std
    // cout << "Hallo, verden!" : «copy out», kopierer "Hallo, verden!" til standard ut
    // endl : manipulerer standard inn slik at man får en ny linje
    // forkast resultatet med ;
    std::cout << "Hallo, verden!" << std::endl;
    // programmet returnerer 0 for å antyde suksess
    return 0;
}

[rediger] Bøker

[rediger] Se også

Forskjeller_mellom_C++_og_Java

[rediger] Eksterne lenker

[rediger] Guider/Tutorials