bar(foo( ));bar("hello world");ide
缘由在于foo( )和"hello world"串都会产生一个临时对象,而在C++中,这些临时对象都是const类型的。所以上面的表达式就是试图将一个const类型的对象转换为非const类型,这是非法的。对象
引用型参数应该在能被定义为const的状况下,尽可能定义为const 。it