3574671410

3574671410



};

class bar

public:

class id

public:


void g(){ }

II ...

foo<bar> variable; variable.func();

W powyższym przypadku dzięki typename zaznaczyliśmy, że potrzebujemy klasy składowej id z typu przekazanego parametrem T. Bez tego słowa powstałby w tamtym miejscu błąd kompilacji.

typename może być też używany w obrębie deklaracji szablonu zamiast słowa kluczowego classtemplate <typename T>

Opisz pojęcie klasy cech (traits).

Klasa cech dostarcza dodatkowych informacji o używanym typie: typy stowarzyszone, ograniczenia, dostępne operacje. Przekazywujemy ją przez parametry szablonu.

Co to jest koncept?

Odpowiednik interfejsu z programowania obiektowego dla programowania uogólnionego. Koncept określa podstawowe warunki jakie musi spełniać typ, aby mógł być zaliczonym do odpowiedniej kategorii.

Jak wygląda algorytm rozstrzygania przeciążenia szablonów funkcji?

1.    Tworzenie zbiorów specjalizacji.

2.    Do dalszych rozważań wybierane są funkcje bardziej specjalizowane (lepiej pasujące do wywołania).

3.    Rozstrzyganie przeciążenia na zbiorze specjalizacji i funkcji przeciążonych.

4.    Jeśli funkcja i specjalizacja sąjednakowo dobre, wybierana jest funkcja.

Wyjątki

Kiedy wyjątek będzie złapany?

try {

throw Thrown;

}

catch(Caught) { }

1. Gdy Thrown I Caught są tego samego typu.

8 z 13



Wyszukiwarka

Podobne podstrony:
dr inż. Piotr Matka PROGRAMOWANIE JAVA 13 class MyWindowAdapter extends WindowAdapteri public void
133 TIF class C3 : public C1{ public: void Metoda3();}; class C4 : public C3, public C2{}; void
class C3 : public C1{ public: void Metoda3();}; class C4 : public C3, public C2{}; void
strona3 2 class B extends A implements Interl, Inter2
Rower2 class Car eztends Vehicle { ii... jak poprzednio } class Rower extends Vehicle { public
{ class Punkt { public int x, y; public void Przesuń(int dx, int dy) { public Punkt(int x, int
Specjalna metoda: ToString(). > class Punkt { public int x, y; public void Przesuń(int dx, int dy
class Punkt{ private int x, y; public void Przesuń(int dx, int dy){ x += dx; y += dy;} public Punkt(
class Punkt{ priyate int x, y; public void Przesuń(int dx, int dy){ x += dx; y += dy;} public Punkt(
class Punkt{ public int x, y; // przesuń punkt o wektor [dx, dy] public void Przesuń(int dx, int dy)
Jak to działa? class Punkt { public int x, y; // przesuń punkt o wektor [dx, dy] public void Przesuń
Jak to działa? class Punkt { public int x, y; // przesuń punkt o wektor [dx, dy] public void Przesuń
133 TIF class C3 : public C1{ public: void Metoda3();}; class C4 : public C3, public C2{}; void
3 (366) 6 class B { public: virtual void f() {.......}}; class D : public B{ public: void f() {.....
dr inż. Piotr Matka PROGRAMOWANIE JAVA 11 public void destroy()ii Szkielet apletu korzystający z kla
—    Następnie należy utworzyć metodę inicjalizującą applet: public void initO
ADMINISTRACJA PUBLICZNA i TI60i I II GO: i

więcej podobnych podstron