Peter Vreman wrote: >>Mattias Gaertner wrote: >> >> >>>This page looks only like the start of a proposal. Neither complete nor >>>official. >>>Why do you think, that D2006 will have generics? >>> >>> >>> >> >>D2006 <> D11=D2007 > > > How will Delphi handle the following case with overloads and different types: > > > > unit test; > > interface > > type > List<T> = class > data : T; > constructor(aData: T); > procedure dump; > end; > > implementation > > procedure show(i:integer);overload; > begin > end; > > procedure show(s:string);overload; > begin > end; > > constructor List<T>(aData: T); > begin > Data := aData; > end; > > procedure List<T>.Dump; > begin > Show(Data); > end; > > end.
It will be eaten, but as soon as you instanziate with non-integer/non-string you get an error, see also C++: #include <string> using namespace std; void show(int i) { } void show(string s) { } template<typename T> class test { public: T data; void p() { show(data); } }; test<int> mytest1; test<int *> mytest2; int main() { mytest1.p(); mytest2.p(); } _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel