Типы данных (типы данных, я думаю?) - PullRequest
1 голос
/ 23 сентября 2010

Я только начал изучать C # и у меня будет один вопрос, на который я не могу найти ответ. Может быть, я просто ищу что-то немного другое. Также на MSDN я нашел следующее:

C # - строго типизированный язык; поэтому каждая переменная и объект должны иметь объявленный тип. Обзор типов данных.

Я также читаю для нее книгу и там написано:

Эта переменная будет хранить числовое значение (целочисленное значение), которое фактически является конкретным типом данных. Поэтому вам нужно будет использовать тип данных, определенный для хранения таких данных, который называется int.

Также, если я хорошо понимаю, так что тип данных любой переменной просто говорит, как будут выглядеть данные в этой переменной? Если его int, то он будет содержать определенный диапазон чисел. Правильно?

Ответы [ 2 ]

2 голосов
/ 23 сентября 2010

Тип данных на самом деле говорит две вещи о ваших данных:

  • Как это выглядит. Если использовать ваш пример, если это int, то он будет содержать число из определенного диапазона.
  • Что вы можете с этим сделать. Например, вы можете сложить вместе два int числа, сказав 1 + 2. Или вы можете добавить текст к string (это выглядит примерно так: "a" + "b"). Или вы можете найти фрагмент текста в другом тексте ("hello".IndexOf("ll") вернет 2).

Эти две вещи называются реализация и интерфейс типа данных соответственно.

0 голосов
/ 23 сентября 2010

True.В C # все происходит от типа object.Но так как вы помещаете в переменные разные типы данных, вы должны указать, какой это особый тип объекта (byte, string, int, ...), поэтому .net Framework знает, как интерпретировать содержащиеся в нем данные..

Например, как фреймворк добавил бы два (int) объекта, если не знает, что содержимое каждого из них является int?

Вот и весь смысл присвоения переменной типа.Если вы это сделаете, фреймворк знает, какие методы он может позволить вам выполнить для этих объектов, в то же время делая операции безопасными для типов.

Немного больше о безопасности типов, если вы хотите: http://en.wikipedia.org/wiki/Type_safety

...