【发布时间】:2013-02-18 10:14:25
【问题描述】:
花括号
for(int i=0; i<10; i++)
{
line one
line two
}
if (something)
{
line three
line four
}
else if(something)
{
line five
line six
line seven
}
else
{
line eight
line nine
line ten
}
我是一个懒惰的打字员,近年来我对 C++ 中的花括号产生了反感。并不是说我认为它们是不必要的;实际上,我不能在长长的代码中没有它们。但是当一个代码分支只包含 3 到 5 行时,仅增加缩进似乎就足以使上下文清晰,而花括号似乎除了占用我宝贵的屏幕空间之外没有太多作用(尤其是当我使用垂直分割)并且需要我按更多的键,由于它们在我的键盘上的位置不太方便,这也给我的手指增加了更多的压力。
所以,我正在考虑做一个预处理器,让我可以使用一些 python 风格的 c++,像这样:
for(int i=0; i<10; i++)
line one
line two
if (something)
line three
line four
else if(something)
line five
line six
line seven
else
line eight
line nine
line ten
所以我们让花括号在短代码分支中是可选的,这样代码就变得更简洁了。 如果我有很多不超过 8 行的函数,那么去掉花括号对我来说真的有很大的不同。东西看起来更紧凑、更干净;并且能够以某种方式在一个屏幕上看到更多有用的代码只会让我感觉更好。做以下这种事情的人可能也会心存感激:
void blahbalh(){
code...
}
显然,人们在几十年前就开始这样做是为了屏幕空间。现在,如果花括号变成可选的不是更好吗?也就是说,我们只在包含的代码比较长时才使用它们。
一般符号
为 C++ 添加更多的 Python 风格。我实际上认为围绕条件的大括号也可以取消。它看起来真的与 C++ 不同,但是在我习惯了 python 之后,我发现它确实非常优雅:
if something:
line three
line four
elif something:
line five
line six
line seven
else:
line eight
line nine
line ten
一般来说,我发现 python 倾向于使用更少的符号,这是一件好事:
- 符号比纯文本更容易导致手指疲劳,因为它们在我们的键盘上的位置相对不方便,并且需要按 SHIFT(这里的 qwerty 和 Dvorak 相同)
- 由于字母数字键更容易按下,如果我们避免使用符号,我们可以更快地键入。而我的经验是,当我不必频繁按 shift 键时,我会感觉更自然流畅。
所以我们可以有更多的纯文本运算符,比如使用and 代替&&,使用or 代替||,等等。我们可以使用python 风格的for 循环,它们是真的很容易打字
你们觉得这个 python 风格的 c++ 怎么样?有什么建议吗?
我正在考虑将这一切都作为一个预处理器来完成,它基本上会进行一些简单的源到源转换。这看起来是无需定义新语言的最简单方法。
【问题讨论】:
-
我爱 c++,我爱 python。我不喜欢这个主意。
-
懒得输入几个花括号,但要实现自定义风格的编译器?
-
真的,不要试图将 C++ 变成它不是的东西。这样的事情可能只会让人头疼。
-
不要试图重塑语言。这会使社区感到困惑,如果您的代码值得重用,那么在深入了解您的语法之后,它最终会被其他人重写。使用具有自动更正、自动缩进等功能的 IDE。如果真的值得,请编写 IDE 插件。但不要重塑您分发的 CPP 文件。
-
大声笑我知道这个问题会被关闭。应该尝试在其他地方寻求帮助:(