TDP004 Objektorienterad programmering
Exempel
Exempelfil | Uppgift | Nyckelord |
---|---|---|
arg_vector.cc | Skriv ut alla kommandoradsargument utan och med hjälp av en vector | std::vector, kommandoradsargument, iteratorer, indexering, pekarstegring, strlen |
create_html_example_index.cc | Skapa en html-tabell över alla exempelfiler. | ifstream, kommandoradsargument, std::string, std::vector, struct, typedef |
file_copy.cc | Kopiera en fil till en annan. Användaren matar in filnamn. | std::ifstream, std::ofstream, filöppning, filstängning, oformaterad inmatning och utmatning |
filemodecreate.cc | Vilka fil-mode skapar egentligen filen om den inte finns? | std::ifstream, std::ofstream, filöppning med olika mode |
frekvenstabell.cc | Skapa en tabell över hur ofta specialtecken och siffror förekommer i en fil. | kommandoradsargument, std::ifstream, std::map, cctype, iteratorer |
funktioner_som_argument.cc | Summera 10 inmatade heltal. | funktionspekare, funktionsobjekt, lambdafunktion, typedef, std::for_each, std::vector, const-parameter, static |
hello.cc | Läs in ett namn och skriv ut "Hej på dig, " följt av namnet. | Ett C++-programs huvudstruktur, enkel inmatning utmatning. |
lambda.cc | Låter användaren antingen summera eller beräkna produkten av inmatade heltal. | lambda-funktion |
namntabell.cc | Läser in rader med förnamn efternamn, och skriver ut en lista sorterad på förnamn och en på efternamn | std::vector, std::pair, std::istringstream, iteratorer, std::getline, formaterat inmatning, std::sort, lambda-funktion |
operator_plus.cc | Addera två tal | Operatoröverlagring, explicit, friend, operator+, operator<< |
overload.cc | Exempel på överlagrade funktioner. | cmath, Överlagra med eftertanke! |
polymorf_destruktor.cc | Polymorf klass - polymorf destruktor! | Arv, kostruktor, destruktor, virtual |
polymorfi.cc | Blanda en lista med djur och få dem att prata. | Arv, Polymorfi, virtuel, slump, typeinfo: typeid, std::vector, std::random_shuffle |
regexp_read_int.cc | Del 1: Hitta while-loopar och dess villkor. Del 2: Läs in text och identifiera alla inbäddade tal. | boost::regex (std::regex), raw-string-literal |
safe_input.cc | Läs in ett heltal i intervallet [1, 7]. Misslyckas aldrig! (?) | formaterad inmatning, felhantering, |
stl_error.cc | Så kan ett vanligt STL-kompileringsfel se ut. Prova kompilera med gccfilter -a -c g++ stl_error.cc | iteratorer, std::vector |
sum_lines.cc | Summering av alla tal på varje rad. All indata förutsätts vara tal. | std::istringstream, formaterad inmatning |
test_random.cc | Slumpar ut N heltal i ett intervall [A, B] och N flyttal normalfördelade runt M med standardavvikelse D och skriver ut en "bild" av fördelningen. | slumgenerering, slumpfördelning, kommandoradsargument, std::map, std::vector, std::max_element, std::stoi, lambda-funktioner |
trim_and_reverse_string.cc | Läser in en mening typ " kunG fu pandA ", tar bort inledande och avslutande blanksteg och skriver ut meningen baklänges. | std::string |
blackjack.cc | En förenklad variant av kortspelet "Blackjack". | objektorientering, klass, medlemsvariabel, medlemsfunktion, "getter", konstruktor, public/private, static-medlem, const-metod, std::vector, std::sort, lambda-funktion, filuppdelning, header-guard |
undefined.cc | Hur fungerar egentligen funktionsanrop och exekveringstacken, var lagras lokala variabler? | GÖR INTE SÅ HÄR! |
unique_list.cc | Läser in heltal, sorterar och tar bort dubletter. | std::list, std::copy, std::unique, std::ostream_iterator |
virtual_delete.cc | Experiment med virtual i kombination med C++11 "delete" | Arv, polymorfi, virtual, delete, abstrakt klass, |
Sidansvarig: Eric Ekström
Senast uppdaterad: 2016-09-19