Hvad er forskellen mellem c ++ og c ++ 11?


Svar 1:

C ++ er programmeringssprogets navn.

C ++ 11 er versionen af ​​standarden for C ++ programmeringssprog.

De andre versioner i kronologisk rækkefølge er:

  1. C ++ 98 (1998) C ++ 03 (2003) C ++ 11 (2011) C ++ 14 (2014) C ++ 17 (2017) C ++ 20 (2020) - næste i rørledning fra i dag

Så lad os prøve at forstå, hvorfor har vi brug for flere versioner af samme sprog. Jeg tænker logisk med navnet på den version, du ville have gættet nu. Hver nye version tilføjer nogle forbedringer til sproget. Det udskriver også nogle ældre syntaks, så sproget vil udvikle sig, og vi kan gøre tingene mere intuitivt og effektivt. Når folk bruger sproget mere og mere og prøver at udvikle mere og mere komplekse applikationer med det, står de over for få problemer, og problemerne løses i de næste versioner. Det er en kontinuerlig proces. Nyere programmeringssprog gør også nogle måder at programmere meget berømt på, og til sidst ender disse funktioner i fremtidige versioner af C ++ også.

Du kan se på de funktioner, der er tilføjet i C ++ 11 sammenlignet med C ++ 03 her.

C ++ 11 - Wikipedia

En ting mere at huske er, at ikke alle tilgængelige compilere understøtter alle tilgængelige versioner.

For kompilatorer, der understøtter versionerne, kan du også bruge kompilatorens funktioner eller kompilere din kode specifikt til den version ved hjælp af kompileringsindstillingen -std = c ++ 11


Svar 2:

Læs begge C ++ & C ++ 11 wikipages.

C ++ - sproget har udviklet sig meget, og dens standardiseringsudvalg har frigivet flere standarder. I det foregående århundrede blev C ++ 98-standarden ofte brugt. Men C ++ 11-problemet lavede en masse store tilføjelser og forbedringer til denne standard, til det punkt, at det blev næsten et andet programmeringssprog.

Jeg anbefaler kraftigt at lære og bruge mindst C ++ 11 (og hvis muligt C ++ 14). Undgå C ++ 98 eller C ++ 03.

Læs den sidste udgave af Programmering - Principper og praksis ved hjælp af C ++. Se også cppreference.com

Brug naturligvis også en nylig compiler (f.eks. GCC 6 eller Clang / LLVM 3.8 i juni 2016).