请问下面程序为什么无法编译?
class Buddy {};template<class T>
class My
{
private:
int i;
public:
void play(My<Buddy)& s)
{
s.i=3;
}
};
int main()
{
My<int> h;
My<Buddy> me,bud;
h.play(bud);
me.play(bud);
}
2011-08-31 09:57
程序代码:class Buddy {};
template<class T>
class My
{
public:
void play( My<Buddy>& s )
{
s.i=3;
}
private:
int i;
template<class> friend class My;
};
int main()
{
My<int> h;
My<Buddy> me;
My<Buddy> bud;
h.play(bud);
me.play(bud);
return 0;
}
2011-09-01 08:28
2011-09-01 08:32
2011-09-01 08:34
2011-09-01 08:54
2011-09-01 13:21
2011-09-02 22:20