本質參考,有什麼區別:返回對象與在默認構造函數簽名
const Date& default_date()
{
static Date dd(2001,Date::Jan,1);
return dd;
}
和
const Date default_date()
{
static Date dd(2001,Date::Jan,1);
return dd;
}
是否函數簽名真的重要嗎?我不認爲日期&是* Date的類型,所以我不確定這會產生多大的差異。它是否只是防止在退貨上製作副本?但是,那麼你不會返回& dd?
(那些是構造函數?) – 2012-09-20 05:15:16
這樣的聲音將幫助你:http://stackoverflow.com/questions/57483/what-are-the-differences-between-pointer-variable-and-reference-variable-in -c – chris
常量或不,我永遠不會使用&運算符從函數內部返回任何東西?如果你在外面分配它,否則大代碼庫中的某個人最終會刪除const,並且你的應用程序以可怕的segvaults結束 –