第一个问题:个人理解,如果不用多态,还是不要加虚了,因为可能会使类体积变大,比如说32位下一个类本来只有一个int成员变量,占32位,加虚函数则变成64位,则体积翻成一倍。。而且构造函数不能加虚。

第二个问题:对于函数中返回动态分配的引用,是一个很不好的编程习惯。如果在函数体外不用引用来接受这个对象引用,则无法delete,凉凉。