cyanic-selkie/wikianc huggingface dataset:
F-14 Tomcat
F-14D Super Tomket
Avioelektronika, ugrađena u F-14D, je podešena za Hjuzov radar AN/APG-71. Taj radar je baziran na primeni digitalnog procesora i strogo usmerenoj anteni, s kanalom za smanjenje smetnji s praćenjem ugla, što ima namenu umanjenja ranjivosti na ometanje. Ima izlaznu snagu od 5 kilovata, upoređujući to u odnosu na 2,8 kilovata za F/A-18 Hornet dobija se predstava o njegovoj moći. Hornetov radar je isto superioran, velikog dometa i visokih sposobnosti. Radar AN/APG-71 ima i niske i visoke frekvencije ponavljanja impulsa. Nisko frekventni opseg se koristi za izdvojen cilj, praćenje i kartiranje konfiguracije terena, a visoko frekventni se koristi za pretrage na velikim udaljenostima. Hjuzov radar AN/APG-71 (AN/APG-71) može istovremeno pratiti više od 24 ciljeva, a ima domet akvizicije i do 740 km. Koristeći vezu između lovačkih aviona, radar u jednom avionu se može ručno isključiti, a tada onaj iz drugog avina, predstavlja zajedničke "oči" i on snabdeva sve sisteme s podacima, u oba aviona. F-14D. Tomket »D«, sa svojim sistemima, je kompatibilan sa zajedničkim taktičkim informacionim distributivnim sistemom, koji integriše komunikacije, orijentaciju i identifikaciju kodova u jedinstvenu bazu podataka za zajedničke usluge korisnika.
F-14D je opremljen, ispod nosnog dela trupa, sa sistemom TV kamera i sa IC detektorom. Prethodne verzije Tomketa (»A« i »B«) su imale jedno ili drugo od ovih sistema, ali ne oboje. Sa ovim sistemima se, zajedno s radarom, identifikuju, prate i prikazuju ciljevi.
Borbena upotreba
desno|mini|250px|Tomket poleće s nosača aviona. Tomket je imao prvo vatreno krštenje s Libijskim lovcima MiG-23, 19 avgusta 1981. godine, u incidentu u zalivu Sidra. U sukobu su učestvovala dva Tomketa i dva aviona MiG-23. S raketama kratkog dometa, ispaljenim s Tomketa, su oborena oba MiG-23. U ponovljenom incidentu u zalivu Sidra, 4. januara 1989. godine, su opet dva američka Tomketa oborila dva Libijska aviona MiG-23.
Za razliku u odnosu na more, nad kopnom se Tomket pokazao daleko ugroženiji s dejstvom raketa zemlja-vazduh sovjetske proizvodnje. To se pokazalo u Iransko-iračkom ratu u odnosu na pretnje raketama Strela 2 i u Somaliji u odnosu na rakete Dvina. Ranjivost, u odnosu na zemaljske raketne sisteme, proističe iz razloga što su Tomketi masivni ciljevi. Iz toga iskustva je proisteklo da su se Tomketi više orijentisali na operacije iznad mora. Opravdanost te predostrožnosti je dokazana s gubitkom Tomketa 21. januara 1991. godine s brojem 161430, kod Al Asad-a, u Iraku. Tada je Tomket oboren s raketom zemlja-vazduh Dvina.
Tomket je učestvovao u ratu u Avganistanu i prvo obaranje, sa zemlje, mu se desilo 11. marta 2002. godine.
Već pred penziju, Tomket je korišćen u ratu protiv Iraka u misijama izviđanja, s nosača aviona. Patrolirajući iznad vojišta, prenosio je situacionu sliku u realnom vremenu.
Borbena iskustva s Tomketom su pokazala da je bio neprikosnoven kao lovac-presretač. Ispostavilo se da je lako uočljiv i veliki cilj, te je kao takav i dosta osetljiv na dejstvo zemaljske protiv-vazduhoplovne odbrane. Zbog te činjenice i zbog visoke cene koštanja, na njegovim iskustvima je razvijen manji i ekonomičniji naslednik F/A-18 Hornet.
Poređenje i medijska popularnost
Tomket, sa integrisanim radarom AN/APG-71, s moćnom raketom Feniks i u kombinaciji s ostalim naoružanjem, je moćno oružje i u sadašnje vreme, kada je već povučen u SAD. Njegove borbene karakteristike su još uvek respektivne, čak i u poređenju sa savremenim lovačkim avionima četvrte i pete generacije.
U svoje vreme, operativne upotrebe, Tomket je važio za superiornog lovca. To se često figurativno, bokserski definisalo kao prednost boksera s više pari, dugačkih i brzih ruku. Protivnici mu se ne mogu ni približiti, na distancu svoga dejstva.
U vremenu razvoja Tomketa, tehnologija je bila na nivou, ispod tih zahteva, tako da su se ta rešenja skupo penalisala sa troškovima razvoja i proizvodnje, a ponajviše s brojem sati potrebnog rada na održvanju za jedan čas efektivnog leta.
Vezano za Tomket, zabeležena je i istorijska činjenica prve pogibije žene Kare Kaltgrin, profesionalnog pilota na lovačkom avionu. Ona je poginula u katastrofi Tomketa 25. oktobra 1994. godine.
Toliko je Tomket bio karakterističan sa svojom superirnošću, u vremenu svoje operativne upotrebe, da je s njim snimljen i akcioni film Top gan. Korišćen je i u drugim akcionim filmovima i u video-igrama.
Chilocoyo Guadalupe, Huehuetla
Chilocoyo Guadalupe je naselje u Meksiku, u saveznoj državi Puebla, u opštini Huehuetla.
Prema proceni iz 2014. godine u naselju je živelo 341 stanovnika. Naselje se nalazi na nadmorskoj visini od 724 m.
Onamia, Minnesota
Onamija je grad u američkoj saveznoj državi Minesota.
Demografija
Po popisu iz 2010. godine broj stanovnika je 878, što je 31 (3,7 %) stanovnika više nego 2000. godine.
Labașinț, Șiștarovăț
Labașinț je naselje u Rumuniji u okrugu Arad u opštini Șiștarovăț.
Prema proceni iz 2013. u naselju je živelo 15 stanovnika. Naselje se nalazi na nadmorskoj visini od 189 m.
Maska (TV film, 2007)
Maska je srpski televizijski film snimljen 2007. godine u režiji i po scenariju Marka Novakovića. Predstavlja drugu po redu adaptaciju istoimene drame Miloša Crnjanskog. Radnja se događa u Beču 1851. godine i prikazuje pripadnike tamošnje srpske elite, veterane rata sa Mađarima.
Los Altitos, Doctor Arroyo
Los Altitos je naselje u Meksiku, u saveznoj državi Nuevo León, u opštini Doctor Arroyo.
Prema proceni iz 2014. godine u naselju je živelo 114 stanovnika. Naselje se nalazi na nadmorskoj visini od 1938 m.
San Nicolás, Coahuayutla de José María Izazaga
San Nicolás je naselje u Meksiku, u saveznoj državi Guerrero, u opštini Coahuayutla de José María Izazaga.
Prema proceni iz 2014. godine u naselju je živelo 14 stanovnika. Naselje se nalazi na nadmorskoj visini od 439 m.
Jochinteol, Tila
Jochinteol je naselje u Meksiku, u saveznoj državi Chiapas, u opštini Tila.
Prema proceni iz 2014. godine u naselju je živelo 511 stanovnika. Naselje se nalazi na nadmorskoj visini od 408 m.
El Guayabo, Coalcomán de Vázquez Pallares
El Guayabo je naselje u Meksiku, u saveznoj državi Michoacán, u opštini Coalcomán de Vázquez Pallares.
Archid, Coșeiu
Archid je naselje u Rumuniji u okrugu Salaž u opštini Coșeiu.
Prema proceni iz 2013. u naselju je živelo 523 stanovnika. Naselje se nalazi na nadmorskoj visini od 222 m.
Al Ma‘rif, Ma'rib
Al Ma‘rif je naselje u Jemenu u pokrajini Marib.
Prema proceni iz 2012. u naselju je živelo 38 stanovnika. Naselje se nalazi na nadmorskoj visini od 1070 m.
La Pila de los Hernández, Irapuato
La Pila de los Hernández je naselje u Meksiku, u saveznoj državi Guanajuato, u opštini Irapuato.
Prema proceni iz 2014. godine u naselju je živelo 90 stanovnika. Naselje se nalazi na nadmorskoj visini od 1743 m.
El Sauce, Coscomatepec
El Sauce je naselje u Meksiku, u saveznoj državi Veracruz, u opštini Coscomatepec.
Prema proceni iz 2014. godine u naselju je živelo 233 stanovnika. Naselje se nalazi na nadmorskoj visini od 2449 m.
Agua Fría, Zontecomatlán de López y Fuentes
Agua Fría je naselje u Meksiku, u saveznoj državi Veracruz, u opštini Zontecomatlán de López y Fuentes.
Prema proceni iz 2014. godine u naselju je živelo 224 stanovnika. Naselje se nalazi na nadmorskoj visini od 245 m.
La Rosa Morada, Guasave
La Rosa Morada je naselje u Meksiku, u saveznoj državi Sinaloa, u opštini Guasave.
Prema proceni iz 2013. godine u naselju je živelo 5 stanovnika. Naselje se nalazi na nadmorskoj visini od 7 m.
Tavernole, Verona
Tavernole je naselje u Italiji u provinciji Verona, u regiji Veneto.
Prema proceni iz 2011. u naselju je živelo 28 stanovnika. Naselje se nalazi na nadmorskoj visini od 626 m.
Jan Svěrák
Jan Svěrák (Žatec, 6.2. 1965. - ) česki je filmski režiser, scenarist i povremeni glumac. Njegov otac je scnarist i glumac Zdeněk Svěrák. Njegov film Kolja iz 1996. je dobio nagradu Oscar za najbolji strani film.
San José de la Luz, Doctor Arroyo
San José de la Luz je naselje u Meksiku, u saveznoj državi Nuevo León, u opštini Doctor Arroyo.
Prema proceni iz 2013. godine u naselju je živelo 106 stanovnika. Naselje se nalazi na nadmorskoj visini od 1679 m.
Chilioara, Coșeiu
Chilioara je naselje u Rumuniji u okrugu Salaž u opštini Coșeiu.
Prema proceni iz 2013. u naselju je živelo 388 stanovnika. Naselje se nalazi na nadmorskoj visini od 202 m.
Rapolano Terme, Siena
Rapolano Terme je naselje u Italiji u provinciji Siena, u regiji Toscana.
Prema proceni iz 2011. u naselju je živelo 2989 stanovnika. Naselje se nalazi na nadmorskoj visini od 300 m.
Rauma (Finska)
Rauma (švedski: Raumo) je grad i općina na jugozapadu Finske od 39,970 stanovnika.
Geografske karakteristike
Rauma leži u Regiji Satakunta, na obali Botnijskog zaljeva udaljena 50 km sjeverno od administrativnog centra regije Porija, 90 km od Turkua i 240 km sjeverozapadno od glavnog grada države Helsinkija.
Pored grada ide magistrala E8 Pori - Turku.
Rauma je tek 26 grad po veličini, ali je treći najstariji jer je povelju o statusu grada dobio još 1442.
U Raumi se nalaze dva lokaliteta uvrštena na UNESCO-vu Listu mjesta svjetske baštine u Evropi, to su Stara Rauma i Sammallahdenmäki nekropola iz brončanog doba, koja leži nedaleko od grada.
Historija
Historija Raume veže se uz franjevački samostan koji je podignut krajem 14. vijeka, ali kako nema dokumenata iz tog vremena, ni danas nije jasno dali je naselje izraslo pored samostana, ili je tu već postojalo neko selo.
U svakom slučaju zbog tog je dobila svoje današnje ime, jer - Rauma, potječe od germanske riječi strauma, a ona je značila potok, jer je taj samostan bio podignut do potoka.
U svakom slučaju kako mu je tadašnja luka u zaljevu Unajan, bila odlično smještena, mjesto je dobro napredovalo. Prvi put se u dokumentima pojavilo pod imenom Unio, zna se da je ono 1413. moralo platiti dva i pol puta veći porez nego Ulvila pored Porija. U to vrijeme podignuta je parohijska crkva sv. Trojstva, koja je izgorila u požaru 1640.
Povelju o status grada grad je dobio 17. aprila 1442. od kralja Karla Knutssona. Građani Raume dobili su ista prava kao i oni iz Turkua, a to je u praksi značilo da mogu slobodno trgovati vlastitim brodovima po Baltičkom moru, organizirati svoju zajednicu i uživati izvjesan imunitet. thumb|right|220px| [[Kamena crkva sv. Križa]] Pored franjevačkog samostana podignuta je krajem 15. vijeka kamena crkva sv. Križa.
Pretpostavlja se da Rauma oko 1500. imala negdje između 500-600 stanovnika.
Stanovnici Raume su se 1550. po naredbi švedskog kralja Gustava Vase, poput građana Ulvile, Porvooa i Tammisaarija, morali iseliti kako bi naselili novoosnovani Helsinki, tek 1557. dopušten im je povratak.
Pored tog stanovnike su mučili i česti požari, naročito su bili veliki oni iz 1640. i 1682., kao i izostatičko podizanje tla koje je njihovu staru luku učinilo neupotrebljivom, pa im se smanjio promet izvoza drvene građe. U 17. vijeku, uvedena je carinska granica oko grada, pa je ona ograničila njegovo širenje. Nakon tog uslijedilo je doba planske izgradnje, sa ortogonalnim rasporedom ulica, pa je novi dio grada podignut na taj način.
Tetti Vigna, Cuneo
Tetti Vigna je naselje u Italiji u provinciji Cuneo, u regiji Piemonte.
Rauma (Finska)
Historija
Rauma je između 1713. - 1721. pretrpila mnogo štete, to je bilo u vrijeme Velikog sjevernog rata kad su jedinice Petra Velikog napale Finsku. Zlatno doba grada bila su vremena posljednjih jedrenjaka, tako je 1890. Rauma imala najveću flotu u Finskoj.
Industrija je pokrenuta krajem 19. vijeka, kad je osnovana tvornica celuloze.
Tetti Vigna, Cuneo
Prema proceni iz 2011. u naselju je živelo 14 stanovnika. Naselje se nalazi na nadmorskoj visini od 346 m.
Rauma (Finska)
Znamenitosti i kultura
Najveća znamenitost je Historijski centar grada - Stara Rauma, sa svojih 600 drvenih zgrada, na površini od 29 hektara. Pored toga to je i kamena crkva sv. Križa, podignuta krajem 15. vijeka, koja je danas jedina preostala srednjovjekovna franjevačka građevina u Finskoj, uz ruševine crkve sv. Trojstva i nekadašnja gradska vijećnica podignuta između 1775. - 76.
Rauma je u Finskoj poznata po svom istoimenom dijalektu - Rauman giäl u kom ima puno riječi iz švedskog, engleskog i njemačkog jezika i po Tjednu čipke koji se tradicionalno održava svake godine u ljetu od 1971. po ulicama Stare Raume. Taj festival se održava u znak uspomene na tradiciju čipkarstva koja se u Raumi razvila tokom 18. vijeka, pa se zna da je samo 1754. prodano 4.000 lakata čipke, što iznosi oko 2400 metara.
Privreda
thumb|left|240px| [[tvornica celuloze Metsä-Botnia]]
U Raumi je 2014. djelovalo 2,252 poduzeća pa je 2013. imala 16,862 radnih mjesta.
Najveći poslodavac pored samog grada je brodogradilište koje je danas u vlasništvu korejskog STX, i kako stvari stoje pred zatvaranjem. Tu je i luka koja ima solidan promet, tvornica celuloze Metsä Fibre i pogon britanskog Rolls-Royca koji proizvodi opremu za brodove, a nedaleko od grada se nalazi Nuklearna elektrana Olkiluoto
Huejúcar, Jalisco
Huejúcar je naselje u Meksiku, u saveznoj državi Jalisco.
Prema proceni iz 2012. godine u naselju je živelo 3551 stanovnika. Naselje se nalazi na nadmorskoj visini od 1842 m.
Brione, Trento
Brione je naselje u Italiji u provinciji Trento, u regiji Trentino-Alto Adige.
Prema proceni iz 2011. u naselju je živelo 142 stanovnika. Naselje se nalazi na nadmorskoj visini od 907 m.
Campo Tres Marías, Guasave
Campo Tres Marías je naselje u Meksiku, u saveznoj državi Sinaloa, u opštini Guasave.
Prema proceni iz 2014. godine u naselju je živelo 5 stanovnika. Naselje se nalazi na nadmorskoj visini od 9 m.
Upravljanje tokom
U računarstvu, upravljanje tokom predstavlja redosled po kome se naredbe, uputstva ili pozivi funkcija proveravaju ili izvršavaju. Eksplicitnim naglaskom na kontrolu toka se razlikuju imperativni programski jezici od deklarativnih programskih jezika.
U okviru imperativnog programskog jezika, naredba upravljanja tokom svojim izvršavanjem daje odgovor na pitanje kojim putem (ako postoje 2 ili više) treba nastaviti izvršavanje. Kod ne-striktnih programskih jezika, funkcijama i jezičkim konstrukcijama se dolazi do istog rezultata, ali se to ne zove nužno upravljanje tokom.
Vrste naredbi kontrole tokom koje podržavaju različiti jezici se razlikuju, ali se mogu podeliti po njihovom efektu: (bezuslovno grananje ili skok),
Skup naredbi je zato generalno strukturiran kao blok, koji pored grupisanja definiše i leksički obim.
Varnița, Șiștarovăț
Varnița je naselje u Rumuniji u okrugu Arad u opštini Șiștarovăț.
Upravljanje tokom
Na nivou mašine ili asemblerskog jezika, instrukcije upravljanja tokom rade tako što menjaju programski registar. Za neke procesore jedina uputstva za upravljanje tokom su uslovne ili bezuslovne naredbe za grananje (skokovi).
Labele
Labela prestavlja ime ili broj eksplicitno dodeljen fiksnoj poziciji unutar izvornog koda, koji može biti pozvan naredbom upravljanja toka koja se nalazi na nekom drugom mestu unutar izvornog koda. Labela, osim što obeležava poziciju unutar izvornog koda, nema drugih funkcija.
Jamison City, Pennsylvania
Džejmison Siti je naseljeno mesto bez administrativnog statusa u američkoj saveznoj državi Pensilvanija.
Varnița, Șiștarovăț
Prema proceni iz 2013. u naselju je živelo 12 stanovnika. Naselje se nalazi na nadmorskoj visini od 289 m.
Upravljanje tokom
Labele
Brojevi redova su zamena za labelu sa imenom (koji se koriste u nekim programskim jezicima kao što su Fortran i Bejsik), to su celi brojevi postavljeni na početak svakog reda teksta unutar izvornog koda. Programski jezici u kojima se ovo koristi često postavljaju uslov da broj svakog novog reda mora biti veći od broja iz prethodnog reda, ali ne mora nužno biti prvi uzastopni. Na primer, u Bejsiku: U drugim jezicima kao što su C i Ada, labela je identifikator koji se obično pojavljuje na početku reda, praćen kolonom. Na primer, u programskom jeziku C: Programski jezik Algol 60 je dozvoljavao kako cele brojeve tako i identifikatore kao labele (oba zakačena za kolonu sa određenom naredbom), ali samo nekoliko u slučaju da je neka druga varijanta Algola dozvoljavala cele brojeve.
Jamison City, Pennsylvania
Demografija
Po popisu iz 2010. godine broj stanovnika je 134, što je 32 (31,4 %) stanovnika više nego 2000. godine.
Upravljanje tokom
Goto
goto naredba (reč nastala spajanjem engleskih reči gou i tu) je najjednostavnija forma bezuslovnog prenosa upravljanja.
Iako ključna reč može biti sastavljena i od velikih i od malih slova u zavisnosti od programskog jezika, obično se zapisuje kao: goto label Cilj goutu naredbe je da izazove izvršavanje naredbe koja je data određenom labelom (ili sledi odmah nakon nje).
Potprogrami
Terminologija reči potprogram dosta varira; alternativni nazivi su rutine, procedure, funkcije (pogotovo ako vraćaju rezultate) ili metode (posebno ako pripadaju klasama ili klasama tipa).
Tokom pedesetih godina dvadesetog veka, memorije računara su bile veoma male u poređenju sa današnjim standardima, pa su potprogrami pre svega korišćene radi smanjivanja veličine programa; deo koda je bio jednom napisan a onda korišćen mnogo puta iz različitih delova programa.
U današnje vreme, potprogrami se češće koriste sa stvaranje programa koji ima obimniju strukturu, npr. izdvajanjem određenog algoritma ili sakrivanjem određene metode prsistupa podacima, potprogrami su jedan tip modularnosti koji pomaže da se skrati posao.
Minimalno strukturirano upravljanje tokom
U maju 1966., Bom i Jakopini su objavili članak u časopisu Komunikacije ACM-a u kojem tvrde da bilo koji program sa goutujem može da se preobrazi u program bez goutua koristeći samo izbor (IF THEN ELSE) i petlje (WHILE uslov DO xxx), moguće sa dupliranim kodom i/ili dodavanjem Bulovih varijabli (tačno/netačno). Kasnije su autori dokazali da izbor može biti zamenjen petljama (i još više Bulovih promenljivih).
Činjenica da je takav minimalizam moguć, ne znači i da je poželjan; uostalom, računarima je teoretski potrebna samo jedna mašinska instrukcija (oduzmi jedan broj od drugog i granaj ako je rezultat negativan), ali praktični računari imaju više desetina ili više stotina mašinskih instrukcija.
Bomov i Jakopinijev članak je pokazao da svi programi mogu biti bez goutu-a. Ostala istraživanja su pokazala da su kontrolne strukture sa po jednim ulazom i izlazom bile mnogo lakše za razumevanje nego bilo koja druga forma, najviše zbog toga što su mogle da se koriste svuda kao naredbe, bez remećenja upravljanja tokom. Drugim rečima, bile su ''kompozabilne. ''(Kasnija unapređenja, kao što su ne-striktni programski jezici - ili ranija, kompozabilne softverske transakcije - su pratile ovaj pravac mišljenja, što je činilo komponente programa još više kompozabilnim.)
Neki akademici su puristički pristupili rezultatima Boma i Jakopinija i započeli raspravu o tome da su čak i   i   naredbe koje se nalaze u petljama loše u praksi pošto uopšte nisu potrebne u navedenom dokazu, stoga su se zalagali da sve petlje treba da imaju samo jedan izlaz. Ovakav puristički pristup je osnova programskog jezika Paskal (dizajniranog 1968-1969), koji je do sredine devedesetih godina dvadesetog veka bio preferiran jezik za programere početnike na fakultetima. Direktna primena Bom-Jakopini teoreme može dovesti do pojave dodatnih lokalnih promenljivih u strukturiranom grafikonu, i takođe dovesti do ponavljanja u kodu. Potonji problem se naziva petlja i po u ovom kontekstu. Paskal je zahvaćen sa oba navedena problema i sudeći po empirijskim istraživanjima Erika S. Robertsa, studenti su imali poteškoća sa formulacijom tačnih rešenja za nekolicinu prostih problema, uključujući pisanje funkcije koja traži element u nizu. U istraživanju Henrija Šapira iz 1980. navedenog od strane Robertsa, stoji podatak da koristeći samo kontrolne strukture koje nudi Paskal, samo 20% subjekata je dalo tačan odgovor, dok nijedan subjekat nije napisao pogrešan kod za rešenje problema ako mu je bilo dozvoljeno da napiše return naredbu u telu petlje.
Kontrolne strukture u praksi
Većina programskih jezika koji sadrže kontrolne strukture poseduju i inicijalnu ključnu reč koja kazuje koji tip kontrolne strukture je sadržan. Jezici se tada dele na one čije kontrolne strukture imaju odnosno nemaju finalnu ključnu reč.
If-then-(else) naredbe
Uslovni izrazi i uslovne konstrukcije su odlike programskog jezika koji izvršava različite operacije u zavisnosti da li Bulov uslov vraća true ili false.
Manje poznate varijacije uključuju:-
Naredbe zamene i predmeta
Naredbe zamene (ili naredbe predmeta, ili višestruke grane) porede zadatu vrednost sa određenim konstantama i započinju izvršavanje u zavisnosti od prve konstante sa kojom se poklope. Obično postoji ograničen broj uobičajenih akcija ("else", "otherwise") koje se preduzimaju ako se nijedno poklapanje ne dogodi. Naredbe zamene dozvoljavaju optimizaciju kompajlera, kao što su lukap tabele. U dinamičkim jezicima, predmeti ne moraju biti ograničeni konstantnim izrazima, i moguće je da se produže do poklapanja šablona, kao u primeru šel skripte sa desne strane, gde   implementira uobičajeni slučaj kao glob koji se poklapa sa bilo kojim stringom. Logika slučaja se takođe može implementirati u funkcionalnu formu, kao u SQL-ovoj  naredbi.
Petlje
Petlja predstavlja niz naredbi koji se definiše jednom ali se može izvršite više puta uzastopno. Kod "unutar" petlje (telo petlje, ispod prikazano kao hhh) se izvršava određen broj puta, ili jedanput za kolekciju stavki, ili dok se ne ispuni određeni uslov, ili neograničeno mogo puta.
U funkcionalnim programskim jezicima, kao što su Haskel i Scheme, petlje se mogu iskazati pomoću rekurzije ili iteracije sa zadatom tačkom bolje nego eksplicitnim konstrukcijama petlje. Repna rekurzija predstavlja specijalni slučaj rekurzije koja se lako može pretvoriti u iteraciju.
Petlje kontrolisane brojanjem
Većina programskih jezika poseduje konstrukcije za ponavljanje petlje određen broj puta. Treba zapaziti da, ako je N manje od 1 u ovim slučajevima, onda jezik zapravo specifikuje da telo treba potpuno preskočiti, ili izvršiti jedanput ako je N=1. U većini slučajeva, brojanje je moguće i unazad, a ne mora ni biti uzastopno. FOR I = 1 TO N          | for I := 1 to N do begin xxx                 |     xxx NEXT I                  | end; DO I = 1,N              | for ( I=1; I<=N; ++I ) { xxx                 |     xxx END DO                  | } U velikom broju programskih jezika, samo se intidžeri mogu pouzdano koristiti za petlju koja je kontrolisana brojačem. Flouting-point brojevi nisu precizno predstavljeni zbog ograničenja hardvera, tako da petlja npr.: for X := 0.1 step 0.1 to 1.0 do možda može biti ponovljena 9 ili 10 puta, u zavisnosti od grešaka sa saokruživanjem brojeva i/ili hardvera i/ili verzije kompajlera. Osim toga, ako se povećanje H-a dogodi puetm ponovljenjog sabiranja, nagomilane greške u zaokruživanju značiti da se vrednost H u svakoj iteraciji može dosta razlikovati od očekivanog niza 0.1, 0.2, 0.3, ..., 1-0.
Uslovno-kontrolisane petlje
Većina programskih jezika poseduje strukture za ponavljanje petlje sve dok se neki uslov ne promeni. Treba napomenuti da je kod nekih varijacija provera na početku, a kod nekih na kraju petlje. U slučaju da je provera pre petlje, telo petlje se može u potpunosti preskočiti, ali ako se nalazi posle tela petlje, petlja se mora izvršiti bar jedanput. DO WHILE (test)         | repeat xxx                 |     xxx LOOP                    | until test; --   while (test) {           | do xxx                 |     xxx }                       | while (test); Prekid kontrole je metoda detekcije promene vrednosti koja se koristi u običnim petljama za započinjanje obrade grupe promenljivih. Ključna promenljiva vrednost ili vrednosti se nadgledaju unutar petlje a njihova promena menja tok rada programa u zavisnosti od zadatih naredbi koje zavise od tih promenljivih vrednosti. DO UNTIL (End-of-File) IF new-zipcode <> current-zipcode display_tally(current-zipcode, zipcount) current-zipcode = new-zipcode zipcount = 0 ENDIF zipcount++ LOOP
Petlje kontrolisane kolekcijom
Nekolicina programskih jezika (npr. Ada, D, Smalltalk, PHP, Perl, Objektni Paskal, Java, C#, Matlab, Mitril, Vižual Bejsik, Rubi, Pajton, Javaskript, Fortran 95 i kasniji) poseduju specijalne strukture koje dozvoljavaju ponavljanje petlje kroz sve elemente niza, ili sve članove kompleta ili kolekcije. nekaKolekcija do: [:svakiElement |xxx].
for Predmet in Kolekcija do begin xxx end; foreach (predmet; mojaKolekcija) { xxx } foreach nekiNiz { xxx } foreach ($nekiNiz as $k => $v) { xxx } Kolekcija<Niska> coll; for (Niska s : coll) {} foreach (niska s in mojaNiskaKolekcija) { xxx } $nekaKolekcija | ZaSvaki-Objekat { $_ }
forall ( index = first:last:step... ) Skala ima for-naredbe, koje generalizuju petlje kontrolisane kolekcijama, i pomažu druge radnje, kao što je paralelna obrada. Haskel ima do-naredbe, koje pružaju sličnu funkcionalnost kao i for-izraza u Skali.
Opšta iteracija
Strukture generalne iteracije, kao što je for-naredba u C-u i do forma u Common Lisp-u, se mogu iskoristiti za izražavanje bilo koje od gore navedenih petlji, kao i ostalih—npr. petljanje preko niza zbirki paralelno. Tamo gde se može primeniti konkretnija struktura petlje, ona je prioritetnija od obične iterativne strukture, pošto čini svrhu izraza jasnijom.
Nana Rosa, Riva Palacio
Nana Rosa je naselje u Meksiku, u saveznoj državi Chihuahua, u opštini Riva Palacio.
Upravljanje tokom
Beskonačne petlje
Beskonačne petlje mogu biti realizovane korišćenjem drugih konstrukcija za kontrolu toka. Najčešće, kod nestrukturiranog programiranja ovo je skok unazad (goto), dok je u strukturiranom programiranju ovo beskonačna petlja (while petlja) podešena da se nikada ne završi, tako što se uslov izostavi ili jednostavno postavljanje istog uslova na True, kao . Neki jezici poseduju specijalne konstrukcije za beskonačne petlje, obično je to izostavljanje uslova iz beskonačne petlje. Neki od pomenutih jezika su Ada, Fotran , Gou , i Rubi.
Nana Rosa, Riva Palacio
Prema proceni iz 2014. godine u naselju je živelo 4 stanovnika. Naselje se nalazi na nadmorskoj visini od 1826 m.
Upravljanje tokom
Beskonačne petlje
Često se dešava da se beskonačna petlja stvori kao posledica greške u uslovno-kontrolisanoj petlji, gde petlja koristi promenljive koje se u stvari nikada ne menjaju unutar te same petlje.
Kontinuacija sa narednom iteracijom
Ponekad u telu petlje postoji potreba da se preskoči ostatak petlje i da se nastavi sa sledećom iteracijom petlje. U nekim jezicima postoji naredba kao što je  (većina jezika), , ili   (Perl i Rubi), koja će to učiniti. Cilj je da se eliminiše izvršenje tela petlje koja se nalazi u sredini koda i da se nastavi sa normalnim izvršavanjem sledeće iteracije. Ako je iteracija na poslednjem mestu u petlji, cilj je da se rano eliminiše čitava petlja.
Ponavljanje trenutne iteracije
Neki jezici, poput Perla i Rubija, poseduju  naredbu koja započinje trenutnu iteraciju od početka.
Arizona, Pijijiapan
Arizona je naselje u Meksiku, u saveznoj državi Chiapas, u opštini Pijijiapan.
Upravljanje tokom
Ponovno pokretanje petlje
Rubi poseduje  naredbu koja pokreće celu petlju ispočetka, od prve iteracije.
Arizona, Pijijiapan
Prema proceni iz 2014. godine u naselju je živelo 4 stanovnika. Naselje se nalazi na nadmorskoj visini od 15 m.
Upravljanje tokom
Rani izlazak iz petlje
Pri korišćenju petlje kontrolisane brojanjem za pretragu tabele, poželjno je da se pretraga obustavi u momentu kada se željena stavka pronađe. Neki programski jezici poseduju naredbu kao što je  (većina jezika), , ili   (Perl), čiji je cilj da odmah prekine petlju i prebaci upravljanje na naredbu koja direktno sledi nakon petlje.
Naredni primer je prikazan u jeziku Ada koji podržava i rani izlaz iz petlje i petlje sa proverom u sredini. Obe odlike su veoma slične i samo poređenjem isečaka iz oba koda može se videti razlika: rani izlaz zahteva da stoji u kombinaciji sa if naredbom, dok je provera u sredini samostalna konstrukcija. Pajton podržava uslovno izvršavanje koda u zavisnosti od toga da li je se rano izašlo iz petlje (sa  naredbom), ili nije - koristeći se else-klauzulom sa petljom. Na primer, Treba zapaziti da je  klauzula u gorenavedenom primeru zakačena za   naredbu, a ne unutrašnju   naredbu. Obe petlje u Pajtonu,   i  , podržavaju else klauzulu, koja se izvršava samo u slučaju da se rani izlazak iz petlje nije dogodio.
Neki jezici podržavaju prekidanje iz ugnežđenih petlji; u teorijskim krugovima, to se zove izbijanje sa više nivoa. Tipična primena ovog principa je pretraživanje višedimenzionalnih tabela. Ovo se može uraditi pomoću prekidanja sa više nivoa (prekidanje sa N nivoa), kao u bash-u i PHP-u, ili putem označenih prekida (izbij i nastavi kod date oznake), kao u Javi i Perlu. Alternative za prekide sa više nivoa uključuju jednostruke prekide, zajedno sa neredbenim promenljivama koji se koriste za prekid još jednom nivou; izuzeci, koji se nalaze na nivou na koji se prekida; stavljanje ugnežđene petlje u funkciju i korišćenje return naredbe za izazivanje prekida čitave ugnežđene petlje; ili korišćenje oznake i goto iskaza. C ne podržava prekid sa više nivoa, i uobičajena alternativa je korišćenje goto naredbe za implementaciju označenog prekida. Pajton ne poseduje prekid sa više nivoa niti nastavak – ovo je predloženo u PEP 3136, ali je odbačeno na osnovu toga što dodatna kompleksnost nije bila vredna legitimne.
Pojam prekida sa više nivoa nekim delom bitna za teorijsko računarstvo, jer dovodi do nečega što se danas naziva the ,, kosaradžu hijerarhija'' Godine 1973. S. Rao Kosaradžu je preradio teoremu strukturiranih programa tako što je dokazao da je moguće da se izbegne dodavanje dodatnih promenljivih u strukturiranom programiranju, dok kod su proizvoljno-duboki prekidi sa više nivoa dozvoljeni u petlji. Štaviše, Kosaradžu je dokazao da postoji stroga hijerarhija programa: za svaki intedžer n postoji program koji sadrži prekid sa više nivoa dubine n koji se ne može preraditi kao program sa prekidima sa više nivoa dubine manje od n bez uvođenja dodatnih promenljivih.
U svom udžbeniku iz 2004., Dejvid Vat koristi Tenentov pojam of sekvencera za objašnjenje sličnosti prekida sa više nivoa sa return naredbama. Vat napominje da klasa sekvencera poznatih kao izlazni sekvenceri, definisanih kao "sekvencer koji prekida izvršavanje komande ili procedure koja prima tekst", obuhvata kako prekide petlji (uključujući prekide sa više nivoa) i return naredbe. Međutim, iako se često implementira, return sekvenceri takođe mogu nositi (return) vrednost, dok the break sekvencer implementiran u savremenim jezicima obično ne može.
Varijante i invarijante petlji
Varijante petlji i invarijante petlji se koriste za izražavanje ispravnosti petlji.
U praksi, varijanta petlje je ceo izraz koji ima početnu ne-negativnu vrednost. Vrednost varijante se mora smanjitivati tokom svake iteracije petlje, ali nikad ne sme postati negativna tokom pravilnog izvršavanja petlje. Varijante petlje se koriste da zagarantuju okončanje petlje.
Invarijanta petlje je tvrdnja koja mora biti tačna pre prve iteracije u petlji i ostati tačna posle svake iteracije. Ovo podrazumeva da kada se petljanje ispravno okonča, i izlazni uslov i invarijanta petlje moraju biti zadovoljeni. Invarijante petlje se koriste za praćenje određenih svojstava petlje tokom uzastopnih iteracija.
Neki programski jezici, poput Ajfela sadrže ugrađenu podršku za varijante i invarijante petlji. U ostalim slučajevima podrška je dodatak, kao što je specifikacija Java jezika za modeliranje za naredbe u petlji u Javi.
Podjezik petlje
Neki Lisp dijalekti pružaju bogat podjezik za opisivanje petlji. Rani primer se može naći u Konverzionalnom Lisp-u Interlispa. Common Lisp  pruža makro za petlje koji implementira takav podjezik.
Strukturirano vanlokalno upravljanje tokom
Mnogi programski jezici, posebno oni u kojima se praktikuje dinamičan stil programiranja, nude konstrukcije za vanlokalno upravljanje tokom. One dovode do toga da tok izvršavanja iskoči iz datog konteksta i nastavi se u nekoj određenoj tački. Uslovi, izuzeci i kontinuacije su tri opšte vrste vanlokalnih kontrolnih konstrukcija; postoje i kompleksnije vrste, kao što su generatori, koprogrami i ključna reč async.
Uslovi
PL/I poseduje 22 standardna uslova (npr. ZERODIVIDE SUBSCRIPTRANGE ENDFILE) koji se mogu podići i presresti putem: ON uslovnom akcijom; Programeri takođe mogu definisati i koristiti svoje imenovane uslove.
Poput nestrukturiranog if, samo jedna naredba može biti određena tako da je u mnoštvu slučajeva GOTO potreban za odluku kuda se upravljanje tokom treba nastaviti.
Nažalost, neke implementacije su imale značajan overhead kako sa prostorom tako i sa vremenom (posebno SUBSCRIPTRANGE), tako da su mnogi programeri pokušavali da ih zaobiđu korišćenjem uslova.
Prosti primeri sintakse: ON uslov GOTO oznaka
Izuzeci
Savremeni jezici have poseduju specijalizovane strukturirane konstrukcije za upravljanje izuzecima koje se ne oslanja na korišćenje naredbe  ili break (sa više nivoa) ili return naredbama. Na primer, u jeziku C++ može se napisati: Bilo koji broj i varijetet   klauzula se može koristiti u gorenavedenom primeru. Ako ne postoji  koji se podudara sa određenim , kontrola se vraća nazad kroz pozive potprograma i/ili ugnežđene blokove dok se ne pronađe   koji se poklapa ili dok se ne dostigne kraj glavnog programa, u tom slučaju se program nasilno gasi sa odgovarajućim obaveštenjem o grešci.
Zahvaljujući uticaju jezika C++,  je ključna reč rezervisana za deklaraciju upravljača izuzetaka koji radi na principu prepoznavanja šablona u ostalim, danas popularnim, jezicima, kao što su Java ili C#. Neki drugi jezici kao što je Ada koriste ključnu reč  za uvođenje upravljača izuzecima i možda upotrebe drugu ključnu reč (  u jeziku Ada) za poklapanje šablona. Nekoliko jezika poput EplSkripta uvode plejsholdere u sintaksu upravljača izuzecima za automatsko vađenje nekoliko delova informacija kada se izuzetak dogodi. Ovaj pristup je dat u primeru ispod kosriteći  konstrukciju u EplSkriptu: U udžbeniku Davida Vata iz 2004 godine se takođe analizira upravljanje izuzecima u okviru sekvencera (o ovome više piše u ovom članku, u odeljku o ranim izlazima iz petlji.) Vat ističe da abnormalna situacija, kao na primer aritmetičko prelivanje ili input/output kvara kao što je ,, datoteka nije pronađena“, je poput greške koja "se detektuje u nekoj jedinici programa na niskom nivou, ali [za koju] se upravljač u većini slučajeva nalazi u programskoj jedinici visokog nivoa". Na primer, program može da sadrži više poziva za čitanje datoteka, ali radnja koja treba da se izvrši u slučaju da datoteka nije pronađena zavisi od značenja (svrhe) te datoteke za program i zato se rutina za upravljanje ovom abnormalnom situacijom ne može naći u sistemskom kodu niskog nivoa. Kasnije Vat navodi da uvođenje testiranja statusnih oznaka u pozivaocu, kako bi se to zahtevalo u jednoizlaznom strukturiranom programiranju ili čak (višeizlaznom) povratnom sekvenceru, rezultuje u tome da "aplikacijski kod obično biva pretrpan testovima statusnih oznaka" i da "programer možda ne testira statusnu oznaku kao posledica lenjosti ili zaboravnosti. U stvari, abnormalne situacije predstavljene od strane statusnih oznaka su po pravilu ignorisane!" Vat naglašava da u suprotnosti sa testiranjem statusnih oznaka, izuzeci imaju suprotno opšte ponašanje, što dovodi do gašenja programa osim u slučaju da se programer ne pozabavi sa izuzetkom na neki način, npr. dodajući u kod naredbe za ignorisanje. Na osnovu ovih argumenata, Vat donosi zaključak da jump sekvenceri ili escape sekvenceri nisu pogodni koliko i sekvencer izuzetaka sa dolenavedenom semantikom.
Svi gorepomenuti jezici definišu standardne izuzetke i okolnosti pod kojima su izbačeni.
Korisnici mogu da izbacuju sopstvene izuzetke; C++ dozvoljava korisnicima da izbace i hvataju bilo koji tip, uključujući osnovne tipove poput , dok neki drugi jezici ne dozvoljavaju takve radnje.
Async
C# 5.0 je uveo async ključnu reč kao podršku asinhronom I/O u "direktnom stilu".
Generatori
Generatori, takođe poznati pod nazivom polu-koprograme, dozvoljavaju privremenu predaju upravljanja potrošačkoj metodi, obično koristeći ključnu reč . Poput async ključne reči, ovo podržava programiranje u "direktnom stilu".
Koprogrami
Koprogrami su funkcije koje mogu da međusobno predaju kontrolu - oblik ko-operativnog multitaskinga.
Koprogrami se mogu implementirati kao biblioteka u slučaju da programski jezik omogućava kontinuacije ili generatore - tako da razlike između koprograma i generatora u praksi postaju samo tehnički detalj.
La Palma, Huehuetlán el Chico
Prema proceni iz 2014. godine u naselju je živelo 54 stanovnika. Naselje se nalazi na nadmorskoj visini od 913 m.
Upravljanje tokom
Predložene kontrolne strukture
U satiričnom članku  lista Datamejšn iz 1973., R. Lorens Klark je predložio da se GOTO naredba može zameniti COMEFROM naredbom, i naveo neke zanimljive primere. Ovo je zaista implementrirano u jeziku INTERCAL, a namenski ezoteričnom programskom jeziku.
Petlja sa središnjim testiranjem
Predloženo od strane  in 1972: loop                          loop xxx1                          read(char); while test;                   while not atEndOfFile; xxx2                          write(char); repeat;                       repeat; Ako se izostavi xxx1, dobijamo petlju sa testiranjem na vrhu.
Ako se izostavi xxx2, dobijamo petlju sa testiranjem na kraju.
Ako se while izostavi, dobijamo beskonačnu petlju.
Zato ova jedna konstrukcija može zameniti više različitih konstrukcija u većini programskih jezika.
Jedna od mogućih varijanti je da se dozvoli testiranje while naredbe više puta; unutar petlje, ali upotreba exitwhen (pogledaj sledeći odeljak) bolje pokriva ovaj slučaj.
Jezici koji ne poseduju ovu konstrukciju mogu da je imitiraju koristeći idiome beskonačnih petlji sa izlazom: while (true) { xxx1 if (not test) break xxx2 } U jeziku Ada, gorenavedena konstrukcija petlje (loop-while-repeat) se može predstaviti korišćenjem standardne beskonačne petlje (loop - end loop) koja ima exit when klauzulu u sredini (ne treba pomešati sa exitwhen naredbom iz narednog odeljka). Dodavanje imena petlji (kao Read_Data u ovom primeru) je opcionalno ali dozvoljava izlaženje iz spoljne petlje koja se nalazi u nekoliko ugnežđenih petlji.
Višestruki rani izlaz/izlaz iz ugnežđenih petlji
Ovo je predložio Can1974. Promenjena verzija je prikazana ovde. exitwhen DogađajA or DogađajB or DogađajC; xxx exits DogađajA: radnjaA DogađajB: radnjaB DogađajC: radnjaC endexit; exitwhen se koristi za specifikaciju događaja koji se mogu odigrati unutar xxx, njihovo događanje je dokazano korišćenjem imena događaja kao naredbe.
Kad se neki događaj manifestuje, izvrši se relevantna radnja, i upravljanje se prebacuje odmah nakon endexit.
Ova konstrukcija pruža veoma jasnu razliku između određivanja da li se neka situacija primenjuje i radnje koja se treba izvržiti za tu situaciju.
exitwhen je po konceptu slično upravljanju izuzetaka, a u ovu svrhu se koriste izuzeci ili slične konstrukcije u dosta jezika.
Prost primer koji sledi uključuje pretragu dvodimenzionalne tabele u cilju pronalaženja određene stavke. exitwhen found or missing; for I := 1 to N do for J := 1 to M do if table[I,J] = target then found; missing; exits found:  print ("item is in table"); missing: print ("item is not in table"); endexit;
El Crucero, Tila
El Crucero je naselje u Meksiku, u saveznoj državi Chiapas, u opštini Tila.
Prema proceni iz 2014. godine u naselju je živelo 512 stanovnika. Naselje se nalazi na nadmorskoj visini od 548 m.
El Cerro de San Cristóbal, Coahuayutla de José María Izazaga
El Cerro de San Cristóbal je naselje u Meksiku, u saveznoj državi Guerrero, u opštini Coahuayutla de José María Izazaga.
Prema proceni iz 2014. godine u naselju je živelo 14 stanovnika. Naselje se nalazi na nadmorskoj visini od 648 m.
Los Camacho, Irapuato
Los Camacho je naselje u Meksiku, u saveznoj državi Guanajuato, u opštini Irapuato.
Generičko programiranje
U računarstvu, generičko programiranje je tehnika koja dozvoljava da jedna promenljiva može da čuva različite tipove podataka (takozvana višeobličnost ili polimorfizam) sve dok su zadovoljeni određeni uslovi kao što su podklasa i pravilna deklaracija. Dakle, dozvoljava nam stvaranje funkcija i klasa koje ne zavise od tipa. Primer: STL vektor, lista, stek itd. Na primer, ako se želi napraviti lista koristeći generičnost, moguća deklaracija bi bila List <T>, gde T predstavlja vrstu podataka. Kada se načini primerak može se napraviti List<Integer> ili List<Animal>. Prema listi se zatim postupa kao prema listi onog tipa podataka koji je naveden. Od objektno orijentisanih programskih jezika, programski jezici C++, D, BETA, Eiffel, Ada i neke verzije Jave (1.5 i novije) podržavaju generičke tipove podataka. VB.NET i C# su počeli da podržavaju generičke tipove od verzije .NET 2.0. Šabloni – osnova za generičko programiranje:  šablon je ustvari formula ili recept za stvaranje klase ili funkcije. Postoje funkcijski šabloni i šabloni klase.
== Generičke funkcije i klase – template == Pod pojmom generičkog programiranja podrazumeva se izrada programskog koda koji se u nepromenjenom obliku može primeniti na različite tipove podataka.
U C jeziku se za generičko programiranje koriste predprocesorske makro naredbe, npr: Ovo je makro naredba kojom se deo koda koji je u zagradama označen sa x zamenjuje sa x*x. Makro naredbe nisu funkcije. One se realizuju u toku kompajliranja leksičkom zamenom teksta.
Primer: U prva dva primera pokazano je kako se ista makro naredba koristi za tipove int i float. Greška u trećem primeru, se može izbeći tako da se „argumenti“ makro naredbe napišu u zagradama tj. Problem kod makroa je da je kod makroa nepregledan i teško je uočiti compile – greške, budući da kompajler samo kod makroa nalepi umesto poziva i moguće su semantičke greške koje je vrlo teško otkriti
To je jedan od razloga zbog kojeg u C++-u imamo generičke (template) funkcije (funkcijske šablone). C++ je strogo tipizirani jezik, tj pri definiciji funkcije moramo navesti tipove parametara. C++ dopušta korišćenje preopterećenih (overloaded) funkcija. To su funkcije koje imaju jednaka imena (i pripadaju istom dosegu – namespaceu) ali različitu listu parametara. Preopterećivanje funkcije ima nekoliko nedostataka: ukoliko želimo nešto promeniti u kodu funkcije moramo to učiniti na puno mesta, pa se povećava i mogućnost greške, ne možemo predvideti na kojim će sve tipovima korisnik hteti da pozove funkciju.
U C++ se isti efekat kao u C-u sa #define može postići korišćenjem definisanjem inline funkcija: Preporuka: bolje je da se koriste inline funkcije nego makro naredbe, jer se time osigurava bolja kontrola tipova i izbegava mogućnost pojave prethodno opisane greške.
Primetimo da sva tri tipa definicije funkcije Kvadrat imaju isti oblik: gde T može biti int, float ili double. Ova definicija ima generički oblik. U C++ jeziku se može vršiti generičko definisanje funkcija, na način da se ispred definicije ili deklaracije funkcije, pomoću ključne reči template, označi da T predstavlja „generički tip“. ili Razlika u ova dva zapisa je u upotrebi ključne reči class ili typename, ali značenje je potpuno isto. Izvršenje poziva funkcije se mora obaviti sa stvarnim tipovima: Pogodno je da se klase i funkcije mogu pisati generički, parametrizovano tipovima podataka. Takve generičke klase i funkcije nazivaju se u jeziku C++  šablonima (templates). Iz šablona se generišu stvarne klase, odnosno funkcije, za konkretne tipove. Generički mehanizam je u potpunosti statički -substitucija parametara je u vreme prevođenja. Funkcijski šablon se ne koristi dok kompajler ne naiđe na poziv generičke funkcije. Tek tada se stvara i prevodi nova varijanta funkcije u zavisnosti o tipu na kojem je funkcija pozvana. Taj proces stvaranja nove konkretne varijante funkcije iz funkcijskog šablona naziva se instancijacija. Tipovi se kod funkcijskih šablona prepoznaju automatski. Zbog toga se i definicija i implementacija takvih funkcija piše u .h datoteku. Kompajler tek u trenutku poziva funkcije može odrediti način kako se prevodi generička funkcija, stoga su generičke funkcije po upotrebi  ekvivalentne makro naredbama. Da bi se moglo izvršiti kompajliranje programa u kojem se koristi generička funkcija, kompajleru mora biti na raspolaganju potpuna definicija funkcije, a ne samo deklaracija funkcije kao što je slučaj kod upotrebe regularnih funkcija.
Tamazolapa, Coscomatepec
Tamazolapa je naselje u Meksiku, u saveznoj državi Veracruz, u opštini Coscomatepec.
Generičko programiranje
Mogu se definisati generičke funkcije sa više generičkih tipova. Primer: definiše funkciju sa dva argumenata kojima se pridružuju generički tipovi T i U. Moguće je izvršiti poziv funkcije na sledeći način:
Tamazolapa, Coscomatepec
Prema proceni iz 2014. godine u naselju je živelo 232 stanovnika. Naselje se nalazi na nadmorskoj visini od 1940 m.
Generičko programiranje
ili još jednostavnije Iako su j i l različitog tipa, kompajler sam vrši konverzije integralnih tipova.
count u klasi LinkedList<String> broji kreirane objekte ove klase
count u klasi LinkedList<Point> broji kreirane objekte ove klase itd.