BOOST_FOREACH:是否有避免全大写拼写的技巧?

时间:2009-08-12 20:29:07

标签: c++ boost

BOOST_FOREACH真的很整洁,但C宏的写作风格有点令人反感。 有没有一个技巧可以避免全大写拼写?

2 个答案:

答案 0 :(得分:29)

也许这个?

#define foreach BOOST_FOREACH

答案 1 :(得分:13)

实际上,更多的谷歌搜索和阅读揭示了Boost foreach documentation中的答案:

  

让BOOST_FOREACH更漂亮

     

人们抱怨这个名字   BOOST_FOREACH。它太长了。全部大写   可能会很烦人。那可能   是的,但BOOST_FOREACH仅仅是   遵循Boost命名惯例。   这并不意味着你会被困住   但是,它。如果你想使用   不同的标识符(foreach,   也许),你可以简单地做:

     

#define foreach BOOST_FOREACH
  #define reverse_foreach BOOST_REVERSE_FOREACH

     

如果您确定,请执行此操作   您选择的标识符不会导致   在您的代码中命名冲突。

并且我刚刚选择了

// cf http://www.boost.org/doc/libs/1_39_0/doc/html/foreach.html 
// -- Making BOOST_FOREACH Prettier
#define boostForeach  BOOST_FOREACH