我知道返回一个临时引用是非法的,但这是我的问题:
这里的问题是:const stringSet & Target::dirList( const dirType type ) const
{
switch( type )
{
case SOURCE_DIR:
return m_sourceDirs;
case HEADER_DIR:
return m_headerDirs;
case RESOURCE_DIR:
return m_resourceDirs;
default:
return stringSet(); // PROBLEM HERE!
}
}
前三个选项返回一个stringSet
数据成员的const引用。如果是默认情况应该怎么办?如果我把它省略,编译器(使用-Wall -Wextra -pedantic
的GCC)会报错,而我不想让它这样做,因为这些选项往往会以最奇怪的方式捕捉到我的错误设计选择 :)
谢谢!