Вопросы с тегом 'value-type'

В информатике термин тип значения обычно используется для обозначения одного из двух типов типов данных: Типы значений или Типы объектов с глубокой семантикой.
19 отв.

Какая разница между структурой и классом в .NET?

Какая разница между структурой и классом в.NET?
16 авг. '08 в 11:21
12 отв.

В С#, почему String является ссылочным типом, который ведет себя как тип значения?

A String является ссылочным типом, даже если он имеет большинство характеристик типа значений, таких как неизменяемые и перегруженные == для сравнения текста, а не для того, чтобы убедиться, что они ссылаются на один и тот же объект. Почему строка н...
12 марта '09 в 3:26
4 отв.

Литеральный суффикс для байта в .NET?

Мне интересно, есть ли способ объявить байтовую переменную коротким способом, например float или double? Я имею в виду как 5f и 5d. Конечно, я мог бы написать byte x = 5, но это немного несущественно, если вы используете var для локальных переменных...
21 марта '11 в 16:12
14 отв.

В чем разница между ссылочным типом и типом значения в С#?

Какой-то парень задал мне этот вопрос пару месяцев назад, и я не мог объяснить это подробно. В чем разница между ссылочным типом и типом значения в С#? Я знаю, что типы значений int, bool, float и т.д., а ссылочные типы - delegate, interface и т.д....
20 февр. '11 в 16:21
5 отв.

Бокс Происшествие в С#

Я пытаюсь собрать все ситуации, в которых бокс происходит в С#: Преобразование типа значения в System.Object type: struct S { } object box = new S(); Преобразование типа значения в System.ValueType type: struct S { } System.ValueType box = ne...
03 нояб. '11 в 16:22
5 отв.

Быстрая и мутирующая структура

Есть что-то, что я не совсем понимаю, когда речь идет о мутировании типов значений в Swift. Как "Быстрый язык программирования" iBook утверждает: По умолчанию свойства типа значения не могут быть изменены из его методов экземпляра. Итак, чтобы сд...
04 июня '14 в 14:00
3 отв.

Проверьте, является ли объект Enum

Я хотел бы знать, является ли 'theObject' перечислением (любого типа перечисления) foreach (var item in Enum.GetValues(theObject.GetType())) { //do something }
27 мая '10 в 9:00
3 отв.

Изменение переменной 'this' типов значений

По-видимому, вы можете изменить значение this из любой точки вашей структуры (но не в классах): struct Point { public Point(int x, int y) { this = new Point(); X = x; Y = y; } int X; int Y; } Я не видел этого раньш...
08 февр. '13 в 5:49
5 отв.

Как ValueTypes происходят из Object (ReferenceType) и все еще являются ValueTypes?

С# не позволяет строить structs из классов, но все ValueTypes получаются из Object. Где это различие сделано? Как CLR обрабатывает это?
05 нояб. '09 в 20:31
7 отв.

Почему в .NET нет RAII?

Будучи в первую очередь разработчиком С++, отсутствие RAII (Инициализация приобретения ресурсов) в Java и .NET всегда беспокоило меня. Тот факт, что бремя уборки переносится от автора класса к его потребителю (с помощью try finally или .NET using co...
06 окт. '08 в 12:25
3 отв.

AnyObject и Any в Swift

Я не понимаю, когда использовать AnyObject и когда пользователю Any в Swift. В моем случае у меня есть словарь [String:???] ???: Может быть Int, Double, Float, String, Array, Dictionary кто-то может объяснить мне разницу между Any и AnyObject и...
12 сент. '14 в 16:13
6 отв.

Возвращая два значения, Tuple vs 'out' vs 'struct'

Рассмотрим функцию, которая возвращает два значения. Мы можем написать: // Using out: string MyFunction(string input, out int count) // Using Tuple class: Tuple<string, int> MyFunction(string input) // Using struct: MyStruct MyFunction(strin...
17 июня '11 в 9:01
3 отв.

Почему оператор неявного преобразования из <t> <u>принять</u> <T?> <u>?</u>

Это странное поведение, о котором я не могу понять. В моем примере у меня есть класс Sample<T> и неявный оператор преобразования от T до Sample<T>. private class Sample<T> { public readonly T Value; public Sample(T value) ...
17 мая '18 в 12:31
4 отв.

Изменение значения элемента в списке структур

У меня есть список структур, и я хочу изменить один элемент. Например: MyList.Add(new MyStruct("john"); MyList.Add(new MyStruct("peter"); Теперь я хочу изменить один элемент: MyList[1].Name = "bob" Однако, когда я пытаюсь сделать это, я получаю...
09 сент. '08 в 13:23
7 отв.

В С#, почему я не могу изменить член экземпляра типа значения в цикле foreach?

Я знаю, что типы значений должны быть неизменными, но это просто предложение, а не правило, правильно? Так почему я не могу сделать что-то вроде этого: struct MyStruct { public string Name { get; set; } } public class Program { static void...
13 апр. '11 в 17:15