这两个有什么不同。
int find_set ( int v )
{
if ( v == parent [ v ] )
return v ;
return parent [ v ] = find_set ( parent [ v ] ) ;
}和:
int find_set ( int v )
{
if ( v == parent [ v ] )
return v ;
parent [ v ] = find_set ( parent [ v ] ) ;
}发布于 2012-12-28 07:23:15
正如@Omri所说,不同之处在于,如果if语句不执行,则第二个语句不会返回,从而为没有返回值的代码路径留下(希望如此)编译器错误。与Ruby等语言不同,C++方法或函数的最后一条语句不是隐式的返回值。
https://stackoverflow.com/questions/14062548
复制相似问题