2016-09-15 56 views
2

我有下面的代码片段,这是完全一样,我希望它:astyle可以处理数组初始化大括号的不同吗?

#include <iostream> 

int main(int argc, char* argv[]) 
{ 
    for (auto i: { 1, 2, 3 }) 
    { 
     std::cout << i << std::endl; 
    } 
} 

不幸的astyle变成这样:

#include <iostream> 

int main(int argc, char* argv[]) 
{ 
    for (auto i : 
      { 
       1, 2, 3 
      }) 
    { 
     std::cout << i << std::endl; 
    } 
} 

有没有什么办法可以让的astyle治疗初始化列表牙套不同(即忽略它们)?

这是我目前的选择:

--mode=c --style=allman --indent=spaces=4 -max-code-length=100 --attach-namespaces --pad-oper --pad-header 
+0

是不是我的意图宣传一个软件或其他,但你有没有考虑使用铛格式? – bolov

回答

0

只需添加选项--keep-one-line-blocks 所以,所有的选项都

--mode = C = --style奥尔曼--indent =空间= 4 - -max码长= 100 --attach的命名空间--pad-OPER --pad头--keep-1行的块


#include <iostream> 

int main(int argc, char* argv[]) 
{ 
    for (auto i : { 1, 2, 3 }) 
    { 
     std::cout << i << std::endl; 
    } 

    bool br = false; 
    if (true) 
    { br = true; cout << "Just test" << endl; } 
} 

但是,您应该小心。 添加--keep-one-line-blocks选项后,astyle只保留最后一行等所有行块。

相关问题