我一直在研究libstdc++头文件几年了,我总是惊讶于它是如何混合使用制表符和空格的,例如:
template<typename _Up, typename... _Args>
<tab >constexpr
<tab >_Optional_payload_base(std::initializer_list<_Up> __il,
<tab ><tab ><tab > _Args&&... __args)
<tab >: _M_payload(__il, std::forward<_Args>(__args)...),
<tab > _M_engaged(true)
<tab >{ }
<...>
<tab > _Empty_byte _M_empty;
_Up _M_value;
<tab >};
template<typename _Up>
<tab >union _Storage<_Up, false>
<tab >{
为什么即使在同一行内也会出现随机的制表符和空格混合?
如果使用非8个字符的制表符显示设置进行查看(presumably,很多用户可能使用这种方式),情况会更加混乱。
然而,libc++头文件看起来就很好(没有制表符),至少我记得是这样的...
显然,如果只谈论制表符与空格的区别,那么这将是一个基于观点的问题,但实际上是两者的混合。我认为从来都不是一个好主意,并且除了libstdc++之外,我还没有看到它出现在任何地方...
c
没有任何关系,所以不要将其标记为c
。 - Pablo