c# - 代码格式中的缩进和对齐

标签 c# java php asp.net

我正在阅读此主题 https://stackoverflow.com/questions/268538/tab-versus-space-indentation-in-c-sharp重新排列制表符与空格缩进。线程的寓意导致“缩进的制表符,对齐的空格”。你能用一些代码示例向我解释缩进意味着什么以及空格对代码意味着什么吗?我只是对代码上下文中的两件事感到困惑?

最佳答案

该线程的示例:

switch(foo)
{
   case bar:      Do1(); break;
   case foobar_2: Do2(); break;
}

此处,关键字“case”缩进。 “bar:”和“foobar_2:”向左对齐。

您可以想象有一个框,其中相同的单词可以左对齐或右对齐。左:

switch(foo)
{
   case bar:      Do1(); break;
   case foobar_2: Do2(); break;
}

右:

switch(foo)
{
   case      bar: Do1(); break;
   case foobar_2: Do2(); break;
}

由于标签配置不同,如果用标签完成这种事情会变得困惑,所以这里必须有空格。但是,使用不同的制表符宽度配置,缩进就变成了这样:

switch(foo)
{
       case bar:      Do1(); break;
       case foobar_2: Do2(); break;
}

这更多是一个偏好问题,因为它不会弄乱哪一行匹配什么。

关于c# - 代码格式中的缩进和对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11535938/

相关文章:

php - 如何知道名称是指 php 脚本中的 mysql 表还是 mysql View

php - 使用 php 和 Mysql 更改 Strftime 日期

php - 如何自动关闭截断段落中的标签

c# - 将所选值从下拉列表转换为 int

c# - 如何使用linq分配两个列表,并使用int创建一个新对象的列表?

java - 如何使用 jacoco 获得不同存储库中测试的测试覆盖率?

java - 将单元格放置在网格(表)中的算法

c# - 扩展字典的属性不会在序列化中显示

c# - MVVM 光 4 RTM : Where are the templates?

java - 在第一个中进行更新时的两个实体管理器实例,第二个实例选择旧值