Osztály sablonok
Egyirányú lista - linkek (linkek) csak a következő elemekhez
kétszeresen összekapcsolt lista - linkek (linkek) a következő és az előző elemekhez
Gyűrű lista - az utolsó elem az elsőhöz van társítva
Műveletek listákon:
- kezdeti képződés (az első elem létrehozása)
- egy elem hozzáadása a lista végéhez
- egy elemet olvas egy adott kulccsal
- Elem beillesztése a listában meghatározott helyre (az elemnek az adott kulccsal való előtti vagy utáni)
- Elem törlése egy adott kulccsal
- a listát kulcs szerint rendezi
Sablonok (paraméterezett osztályok) - lehetővé teszik a hozzátartozó osztályok családjainak létrehozását, amelyek bármely típusú adatra alkalmazhatók, és ezt a típust osztályparaméterként adják át
sablon <параметр шаблона> osztály definíciója
A minták leírásának szabályai:
- A helyi (sablonba ágyazott) osztályok nem tartalmazhatnak sablonokat argumentumként
- Az osztálysablonok tartalmazhatnak statikus elemeket, baráti funkciókat és osztályokat
- A sablonok mind a sablonokból, mind az osztályokból származhatnak, és alapvető lehet számukra
- Sablonbarát sablonokat nem definiálhat egy sablonban
sablon neve <аргументы> object_name [(design_parameters)]
lista
lista
32) Kivételkezelés általános mechanizmusa C ++-ban. Kivételek létrehozása és lehallgatása. Működési kivételek listája.
Kivételes helyzet az előre nem látható vagy vészhelyzet előfordulása, amelyet a berendezés helytelen használata okozhat.
A C ++ kivétel mechanizmus olyan eseményekhez készült, amelyek a program eredmé- nyeként jelentkeznek.
Híváscsomó - olyan hívások sorozata, amelyeket hívtak, de még nem fejeződött be
Az összecsomagolás folyamata a memória felszabadítása a helyi változók és a visszatérő vezérlés a hívó funkció
A C ++ könyvtár műveletei kivétel generálás esetén:
1) a dobási paraméter egy példánya olyan statikus objektum formájában jön létre, amely a kivétel feldolgozásáig létezik
2) egy megfelelő kezelő keresésénél a köteg nincs felcserélve; A régióból származó helyi objektumok megsemmisítőit hívják
3) a kivétel objektum átadódik egy olyan kezelőnek, amelynek paramétere kompatibilis típusonként
A kezelő akkor tekinthető meg, ha az adott tárgy típusát a dobás után adják meg:
- ugyanaz, mint a fogás
- a fogás alatt megadotttól származik
- egy olyan mutató, amelyet szabványos szabályok szerint alakíthatnak át a fogás alatt megadott értékekkel
void f1 () dob (int, char *)
Kivételek a konstruktőrökben: