C++ std::future<T> 方法应该命名为 is_ready() 还是 ready()?
Should C++ std::future<T> method be named is_ready() or ready()?
为什么实验名称is_ready()
considered是对std::future
的增强,而不是更符合STL编码风格的ready()
? Future 已经有一个名为 valid()
的方法,它也没有 is_
前缀。
<speculation>
我怀疑 is_ready()
更清楚。阅读代码时 if (future.is_ready())
听起来几乎是英语,显然意味着 is_ready
是 const
。 if ( future.ready() )
听起来可能意味着“future
需要准备好,然后 return” 或“future
已经准备好”。
</speculation>
我怀疑这是因为已经存在的枚举常量 std::future_status::ready
。因此 is_ready()
检查状态 ready
。尽管它们都在不同的命名范围内,但我假设作者希望避免名称交叉。
为什么实验名称is_ready()
considered是对std::future
的增强,而不是更符合STL编码风格的ready()
? Future 已经有一个名为 valid()
的方法,它也没有 is_
前缀。
<speculation>
我怀疑 is_ready()
更清楚。阅读代码时 if (future.is_ready())
听起来几乎是英语,显然意味着 is_ready
是 const
。 if ( future.ready() )
听起来可能意味着“future
需要准备好,然后 return” 或“future
已经准备好”。
</speculation>
我怀疑这是因为已经存在的枚举常量 std::future_status::ready
。因此 is_ready()
检查状态 ready
。尽管它们都在不同的命名范围内,但我假设作者希望避免名称交叉。