banner

的15年后,达·芬奇肯定道:“性交的行为以及过程中使用的阴茎是如此丑陋,如果不是因为美丽的面孔、身体的装饰以及不受限制的姿势,那么人类可能会失去其作为万物之灵的本性”。

P115图

tips

达·芬奇,《女性典型器官 解 剖 图 》,1508—1510年。钢笔及棕色墨水,炭笔及水彩颜料,黄棕色水彩纸,有穿孔痕迹,47.8×33.3cm。英国温莎,皇家图书馆,索引号n.12281r。可能是因为达·芬奇之前对尸检的研究,这张图稿中的肾、肝和脾的形状和大小都相当准确。

P116-P117图

达·芬奇,《子宫里的胎儿解剖学研究》,1510年前后。钢笔及g!”的对象。返回类型必须是ostream &,而不能仅仅是ostream。如果使用返回类型ostream,将要求调用ostream类的复制构造函数,而ostream没有公有的复制构造函数。幸运的是,返回一个指向cout的引用不会带来任何问题,因为cout已经在调用函数的作用域内。

3.返回对象

如果被返回的对象是被调用函数中的局部变量,则不应按引用方式返回它,因为在被调用函数执行完毕时,局部对象将调用其析构函数。因此,当控制权回到调用函数时,引用指向的对象将不再存在。在这种情况下,应返回对象而不是引用。通常,被重载的算术操作符属于这一类。请看下述范例,它再次使;    // member version

这个类也可以使用下面的原型:

friend Time operator+ (const Time & t1, const Time & t2);    // non-member version

加法操作符需要两个操作数。对于成员函数版本来说,一个操作数通过this指针隐式地传递,另一个操作数作为函数参数显式地传递;对于友元版本来说,两个操作数都作为参数来传递。

记住: 非成员版本的重载操作符函数所需的形参数目与操作符使用的操作数数目相同;而成员版本所需的参数数目少一个,因为其中的一个操作数是被隐式地传递的调