C#申报问题

C#申报问题,c#,C#,我对c#很陌生,但我每天都在学习 我想知道以下是什么意思: private DataIdentifier dataIdentifier; 他们为什么这样写?这几乎是同一个名字,但他们在第一个单词中使用了大D。这只是另一种表示法。这真是一个愚蠢的变量名。我不建议你遵循同样的惯例数据标识符是类/对象类型private是访问修饰符 这在类中声明了一个成员变量(即“字段”) private是最常用的。它指定只能从类内访问变量。访问修饰符是可选的,默认为private(但它被认为是最好的实践,无论如何都

我对c#很陌生,但我每天都在学习

我想知道以下是什么意思:

private DataIdentifier dataIdentifier;

他们为什么这样写?这几乎是同一个名字,但他们在第一个单词中使用了大D。

这只是另一种表示法。这真是一个愚蠢的变量名。我不建议你遵循同样的惯例<代码>数据标识符是类/对象类型
private
是访问修饰符

这在类中声明了一个成员变量(即“字段”)

private
是最常用的。它指定只能从类内访问变量。访问修饰符是可选的,默认为
private
(但它被认为是最好的实践,无论如何都是显式的)

DataIdentifier
是变量的名称(即,只能将
DataIdentifier
类的实例放入变量中)

dataIdentifier
是变量的名称。这是当您想要访问保存在变量中的对象时在代码中编写的内容

private DataIdentifier dataIdentifier; 
注:从技术上讲,对象实际上并不“在”变量中;变量通常是指向内存中对象实际所在位置的指针(它“引用”对象)

随着对C#的进一步了解,您将看到一个常见的习惯用法,其中属性的名称与类型的名称相同:

public SpaceShip SpaceShip;

这是允许的,因为编译器足够聪明,当您在代码中键入
SpaceShip
时,仅从上下文就可以知道您是引用变量还是引用类本身。

数据标识符是一种类型

dataIdentifier
是该类型字段的名称


名称的相似性是完全一致的。

数据标识符是类型(类或结构),
数据标识符是名称。

数据标识符是变量的类型
dataIdentifier是变量的名称(类型为dataIdentifier)

C#区分大小写。DataIdentifier和DataIdentifier是两个不同的东西

这里DataIdentifier是类型,DataIdentifier是变量

private DataIdentifier dataIdentifier; 
DataIdentifier
是一种类型,而
DataIdentifier
是声明为该类型的变量


其中,
int
是一种类型,
a
是int

类型的变量,您可以将示例与C的实际值联系起来

字段声明: attributesopt字段修饰符选择类型变量声明符; 字段修饰符: 场修改器 字段修饰符字段修饰符 字段修改器: 刚出现的 平民的 受保护的 内部的 私有的 静止的 只读 不稳定的 变量声明器: 变量声明器 变量声明器,变量声明器 变量声明器: 标识符 标识符=变量初始值设定项 变量初始值设定项: 表示 数组初始值设定项
这个问题已经被回答了好几次,但我想推荐一本我认为是C#最好的入门书。即使你不喜欢从书本上学习,你也会喜欢这个:

看看免费的章节,如果你喜欢,就买吧。我保证你不会后悔的。希望能有帮助


DISCLAMER:我绝对不是OReilly Media或其任何子公司的附属公司……;)

我更喜欢拼写错误,这让我想起了一只模糊的小猫在学习c#c#c#c#c#c#c#c#c#c#c#c#c#c#c#c35。而
私有数据标识符DataIdentifier
在很多情况下都是有效的(第一个
DataIdentifier
是类型,第二个是变量名,如上所述),这会让人困惑…@pst,是的。另外,这是一个
驼峰式的
类型命名,还有一个类型我现在不记得了。我不希望声明与类型名同名的变量。。。因此,请记住混淆。DataIdentifier是大写(或大写或…),而DataIdentifier是camelCase(区别在于第一个字符是否也大写)。在这种情况下,即使它们是相同的大小写,也会根据它们在语法产品中的使用位置引用两个不同的东西。回答得好。然而,"代码"号公共飞船,SpaceShip
时,code>才会编译。(变量/方法/属性不能与封闭类型共享名称——那太令人困惑了!)@pst:谢谢你,我不知道!不过,嵌套类型在实践中并不那么常见。。。我也喜欢《头优先》系列 field-declaration: attributesopt field-modifiersopt type variable-declarators ; field-modifiers: field-modifier field-modifiers field-modifier field-modifier: new public protected internal private static readonly volatile variable-declarators: variable-declarator variable-declarators , variable-declarator variable-declarator: identifier identifier = variable-initializer variable-initializer: expression array-initializer