我有一个基类,其中覆盖<<操作员。
friend std::ostream& operator<<(std::ostream& out, const Animal& animal);
ostream & operator<<(ostream & out, const Animal& animal)
{
out << animal.age << "," << animal.size << endl;
}
这是我的Abonne课程的.h。我有一个名为Etudiant的Abonne类的继承类。我希望覆盖&lt;&lt;再次在Etudiant类中运算符,但我希望它调用运算符&lt;&lt;在Etudiant类的定义中基类Abonne,加上更多。我试过这个:
friend ostream& operator<<(ostream& out, const Dog& dog);
ostream& operator<<(ostream& out, const Dog& dog)
{
return out << dog << endl;
}
它不起作用,回想起&lt;&lt;本身并递归,直到它崩溃。
我该怎么办?
谢谢。
答案 0 :(得分:0)
轻松!您需要调用带{
sprintf(uap->buf,"Hello"); /* fill the buffer with Hello */
的版本。所以,只需这样做:
p->p_retval[0] = 0; /* set the return value of the system call*/
return 0;
}