parametryzowana klasa

0

Cześć ;)
Założmy, że mamy jakąś tam parametryzowaną klasę:

template <class T>
class W{


}

I mamy w niej poprawnie zdefiniowany operator + dla obiektów

W<int> obj

, a zatem dla tej klasy. Tworzymy teraz obiekt następuąco:

W<W<int> > obj;

Czy dla takiego obiektu będą działały operatory?
Dlaczego?

0

A dla czego nie ?

0

Nie, bo masz go zdefiniowanego jedynie dla W<int>

0

dwa przeciwstawne zdania. Które prawidłowe?

0

A odpowiedz brzmi: pokaz kod bo zalezy co masz na mysli...

0

Chodzi o to, żeby uogólnić. Oczywiście jasnym jest, że jako parametr będę podstawiał takie typy, które sepełniają założenia.

2

Da się napisać tak że będzie działać, ale też da się napisać tak że nie będzie działać.
Wszystko zależy od tego co się kryje pod: - "poprawnie zdefiniowany operator +"
Dla mnie jak nie będzie działać dla W<W<int> > to nie jest poprawnie zdefiniowany, aczkolwiek to już płaszczyzna semantyki.

0

ok, w takim razie nasze semantyki przynajmniej w tym wgzlędzie są takie same :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1