参数传递中常量位置的 c++ 标准是什么?
What's the c++ standard in const postion in parameter passing?
如果我没弄错的话,这些函数参数:
void foo(const Type& type);
void foo(Type const& type);
是等价的。声明它们的标准方式是什么?通过使用第一个或第二个函数声明?如果ISO c++没有定义任何规范,那么"标准"是指最易读和最常用的版本。
声明它们的标准方式是什么?
都是标准的
这里的"标准"是指最易读和最常用的版本
可读性存在于旁观者的眼中。我更喜欢第二种,因为它提供了一致的从右到左的顺序。有些人更喜欢第一种,因为它明确地将限定符与它所限定的类型关联起来。
没有公认的c++风格指南。我能想到的最接近的是Google的c++指南,他们在这个主题上说的是…
有些人喜欢用int const foo来代替const int foo。他们认为这样更容易读,因为它更一致:它保持了const总是跟随它所描述的对象的规则。但是,这个一致性参数不适用于具有少量深嵌套指针表达式的代码库,因为大多数const表达式只有一个const,并且它适用于底层值。在这种情况下,不需要保持一致性。把const放在前面可以说是更具可读性,因为它遵循英语的"形容词"。(const)在名词前面(int) .也就是说,虽然我们鼓励将const放在首位,但并不要求这样做。但是要与你周围的代码保持一致!
相关文章:
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- 标准 N3337 5.2.10 第 7 条中的C++"类型"是什么意思?
- 如何声明一个标准::提升直方图的向量?提升直方图的类型是什么?
- 根据 c++ 标准在该宏定义中推送/弹出宏时的行为是什么
- 标准库容器最简单、性能差的哈希类是什么?
- C++ 捕获异常后进行清理的标准方法是什么?
- 读取二进制文件的惯用C++17标准方法是什么
- 在 NTL 中构造多项式的标准方法是什么?
- C++标准兼容库容器的完整接口是什么?
- 此代码中的数组初始化样式是什么?这是标准的吗?
- Eclipse CDT 项目中的缺省C++标准是什么?
- "AfxIsValidAddress"函数的等效标准函数是什么?
- 在C++中编写符合 IEEE-754 标准的双/浮子除法的最快方法是什么?
- embarcadero/borland TMemoryStream和TFileStream的标准C++等价物是什么?
- 使用C 17处理Unicode的有效,符合标准的机制是什么
- C 11中的标准方法是什么,可以访问std :: vector中元素n的指针
- 模板函数作为模板参数,标准是什么
- 选择排序算法的标准是什么
- 编译器用来决定移动操作是否安全的标准是什么
- 参数传递中常量位置的 c++ 标准是什么?