Is het volgende programma een correct c++ programma ?
Borland C++ compiled de template class wel, maar geeft bij het aanmaken van een instance (in main dus) de error:
Waarom ?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| template <class A> struct reader
{
template <class rt> reader (rt(A::*)() = A::read) {}
};
struct s
{
void read () {}
};
int main ()
{
new reader<s>;
} |
Borland C++ compiled de template class wel, maar geeft bij het aanmaken van een instance (in main dus) de error:
Visual C++ weigert zelfs de template class zelf te compilen.Could not find a match for 'reader<s>::reader()' in function main()
Waarom ?