有没有办法将空std::span<int>
传递给函数?
我有如下功能:
bool func( const std::vector<int>& indices )
{
if ( !indices.empty( ) )
{
/* do something */
}
...
}
// when calling it with an empty vector
const bool isAcceptable { func( std::vector<int>( 0 ) ) };
而且我想将其更改为使用std::span
而不是,std::vector
以便它也可以获取std::array
原始数组作为其参数。
现在在这里:
bool func( const std::span<const int> indices )
{
if ( !indices.empty( ) )
{
/* do something */
}
...
}
// when calling it with an empty span
const bool isAcceptable { func( std::span<int>( ) ) }; // Is this valid code?
是否也std::span
正确支持所有连续的容器(例如std::vector
,std::array
等)?