c#: различие между “Системой. Объект” и “объект”

Это событие ended. , .

http://dev.w3.org/html5/spec/Overview.html#event-media-ended

Пример:

var audioElement = document.getElementById("myAudio");

audioElement.addEventListener('ended', function() {
    // Audio has ended when this function is executed.
},false);

71
задан Paolo Tedesco 19 June 2009 в 10:18
поделиться

7 ответов

строка - это псевдоним для global :: System.String . Это просто синтаксический сахар. Они точно взаимозаменяемы почти во всех случаях, и в скомпилированном коде не будет разницы.

Лично я использую псевдонимы для имен переменных и т. Д., Но я использую имена типов CLR для имен в API, например:

public int ReadInt32() // Good, language-neutral

public int ReadInt() // Bad, assumes C# meaning of "int"

(Обратите внимание, что тип возвращаемого значения на самом деле не является именем - он закодирован как тип в метаданных, так что здесь нет никакой путаницы.)

Единственные известные мне места, где можно могут использоваться, а другой не может (о чем я знаю):

  • nameof запрещает использование псевдонимов
  • При указании базового базового типа перечисления, Только можно использовать псевдонимы
68
ответ дан 24 November 2019 в 13:07
поделиться

Одно является псевдонимом другого. Все зависит от стиля.

6
ответ дан 24 November 2019 в 13:07
поделиться

Тип объект является псевдонимом для System.Object . Тип объекта используется и отображается как ключевое слово. Я думаю, что это как-то связано с наследием, но это просто дикая догадка.

Взгляните на эту страницу MSDN для получения всех подробностей.

Я предпочитаю использовать версии с нижним регистром, но без особых причин. Просто потому, что подсветка синтаксиса у этих "базовых" типов отличается, а я не

7
ответ дан 24 November 2019 в 13:07
поделиться

строка (со строчной буквой «s») - это строковый тип языка C #, а тип System.String - реализация string в .NET framework.

На практике нет никакой разницы, кроме стилистической.

EDIT: Поскольку вышеизложенное явно недостаточно ясно, между ними нет никакой разницы, они являются один и тот же тип после компиляции. Я объяснял семантическую разницу, которую видит компилятор (которая является всего лишь синтаксическим сахаром, очень похожим на разницу между циклом while и for).

1
ответ дан 24 November 2019 в 13:07
поделиться

Нет никакой разницы. Существует ряд типов, называемых примитивными типами данных , которые управляются компилятором в указанном вами стиле.

Стиль именования с прописной буквы - это правило именования ISO. Это более общий, распространенный; принудительно применяет одни и те же правила именования для всех объектов в источнике без исключений, которые есть в компиляторе C #.

0
ответ дан 24 November 2019 в 13:07
поделиться

строка - это псевдоним для global :: System.String и объекта для global :: System.Object

Если у вас есть using System; в вашем классе, String / string и Object / object являются функционально идентичны, а использование зависит от стиля.

(EDIT: удалено слегка вводящая в заблуждение цитата , согласно комментарию Джона Скита)

3
ответ дан 24 November 2019 в 13:07
поделиться

Насколько мне известно, я знаю, что это ярлык, проще использовать строку, а не System.string.

Но будьте осторожны, есть разница между String и string (C # - это с учетом регистра)

0
ответ дан 24 November 2019 в 13:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: