C 11 的 Auto 关键字是否过度杀伤力?
虽然 auto 关键字在处理复杂模板类型方面已被证明是无价的,正如其设计者所希望的那样,人们担心它在更简单的场景中被过度使用。是否应该使用 auto 来避免显式声明类型,即使对于像 std::make_shared
预期用途和实践指南
根据C 标准委员会认为,当明确说明类型具有挑战性但右侧的类型很明显时,应使用 auto。例如,考虑以下代码:
my_multi_type::nth_index<2>::type::key_type::composite_key_type:: key_extractor_tuple::tail_type::head_type::result_type
检索 boost::multi_index 中的复合键类型需要这个复杂的表达式。即使类型已知为 int,在这种情况下也应该使用 auto 来增强可读性。
推荐用例
在以下情况下使用 auto:
示例
警示故事
以上是C 11 的'auto”关键字是否被过度使用:何时应避免显式键入?的详细内容。更多信息请关注PHP中文网其他相关文章!