Interface sınıfımı şablonlar ile birleştirebildim(bir önceki başlıkta daha detaylı görülebilir) ve bu çok hoşuma gitti:
interface Node( NodeType)
{
NodeType.Type GetValue();
NodeType[] GetConnectedElems();
void AddConnection( NodeType[] connections... );
}
C++ da ise şablonları ve saf fonksiyonları aynı anda kullanamıyoruz.
struct A
{
template< typename T >
virtual T foo() = 0;
};
error: templates may not be 'virtual' virtual T foo() = 0;
D bu işin içinden nasıl çıkıyor. Sanırsam bir tek interface'lere özel bir durum fakat derleme zamanında olması gereken şablonlarla çalışma zamanında olması gereken polymorfism nasıl beraber çalışabiliyor. Peki bu mümkünse C++ 'da niye mümkün değil?
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
Permalink
Reply