人们倾向于说pass by (const) reference if you want speed
,老实说,我很少在我创建的方法上使用 const 引用,只是因为速度,我只在需要时才进行引用,例如给变量赋值,就像这个 SSCE
void Do( int& iref )
{
a = 2;
}
{
int a = 0;
Do( a );
}
问题实际上是,如果对象是在函数调用上创建的,是否也将其作为引用传递,这是如何工作的?
void Add( CString& strPath )
{
g_Path.push_back( strPath );
}
for( std::string line; getline( input, line ); )
{
Add( CString( line.c_str() ) ); //object created on function call
}