Все вопросы: [reference-type]
20 вопросов
Как ValueTypes происходит от Object (ReferenceType) и по-прежнему остается ValueTypes?
C # не позволяет структурам быть производными от классов, но все ValueTypes являются производными от Object.Где проводится это различие? Как среда CLR справляется с этим?
typeof (System.Enum) .IsClass == false
Основал: typeof(System.Enum).IsClass == false Стало странно, что System.Enum имеет также .IsValueType == false, но Reflector показывает, что на самом деле это просто abstract class. System.Enum - это ссылочный тип, такой как System.ValueType, и приведение значений перечисления к / из с...
Ссылки на обучение на C #
Через пару недель я обучу класс инженеров-первокурсников основным ссылкам на C # в рамках их первого курса программирования. Большинство из них никогда раньше не программировали, и у них было достаточно проблем с изучением объектов, так что обучение справочникам будет сложной задачей. Я планирую...
C#, Copy one bool to another (by ref, not val)
I am at a brick wall here. Is it possible to copy one bool to the ref of another. Consider this code . . . bool a = false; bool b = a; b is now a totally separate bool with a value of false. If I subsequently change a, it will have no effect on b. Is it possible to make a = b by ref? How would...
Performance of Sorting Reference Type vs Value Types
We were trying to sort a collection of FileInfo objects in .NET. We implemented our IComparer to ensure that FileInfo objects were sorted based on our criteria. We then noticed that performance of sorting the FileInfo objects was many times slower than just ints. On a hunch (and remembering ho...
What's the size of a reference on the CLR
I was (purely out of curiosity) trying to find out what the size of an actual reference is when an allocation is made on the stack. After reading this I still don't know (this answers it only for value types or type definitions), and I still cannot seem to find it anywhere. So basically imagine...
Implementing Nullable Types in Generic Interface
So in a previous question I asked about implementing a generic interface with a public class and bingo, it works. However, one of the types I'm looking to pass in is one of the built in nullable types such as: int, Guid, String, etc. Here's my Interface: public interface IOurTemplate<T, U>...
Cloning a C# Reference Type to a Derived Reference Type
Coming from a C++ background, I am finding cloning of objects in C# a little hard to get used to. To clear up some of my confusion, I am looking for an elegant way to clone an object of a base type to a derived type. To illustrate: public class Base { public string Member1; public int ...
How do I pass reference types between webservices?
I'm having a bit of difficulty passing a reference type between webservices. My set up is as follows. I have a console application that references two web-services: WebServiceOne WebServiceTwo WebServiceOne declares the details of a class I am using in my console application...let's call it...
C # поддерживает типы значений и ссылочные типы, но все ли они являются объектами?
Я знаю, что в C # есть как значения, так и ссылочные типы, но как это сделать: int age = 100; string blah = age.ToString(); Если age является типом значения, как он использует метод ToString? Преобразуется ли он в объект ТОЛЬКО тогда, когда это требуется для внутренних целей?
Изменяемая оболочка типов значений для передачи в итераторы
Я пишу итератор, который должен передавать изменяемое целое число. public IEnumerable<T> Foo(ref int valueThatMeansSomething) { // Stuff yield return ...; } Это приводит меня к ошибке «Ошибка 476. Итераторы не могут иметь параметры ref или out». Мне нужно, чтобы это цело...
Примеры использования для упаковки типа значения в C #?
Бывают случаи, когда экземпляр тип значения следует рассматривать как экземпляр ссылочного типа. Для такие ситуации, тип значения экземпляр может быть преобразован в экземпляр ссылочного типа через процесс называется боксом. Когда значение тип экземпляр упакован, хранилище р...
Обнуляемый <> как TModel для ViewPage
Каковы возможные причины того, какие типы Nullable <> запрещено передавать в качестве параметра TModel универсального System.Web.Mvc.ViewPage ? Иногда это может быть удобно. В источнике ASP.NET MVC определено, каким TModel должен быть класс: public class ViewPage<TModel> : View...
получить атрибут свойства в .NET после передачи свойства функции как ref
можно ли передать свойство, например. Person.Firstname по ссылке на функцию, а затем по-прежнему сможет читать атрибуты Person.Firstname через этот ссылочный тип? Так знает ли ссылочный тип, что это не только строка, но и свойство Firstname класса Person? Тиа Я пытаюсь написать расшир...
Каков самый быстрый способ узнать, содержит ли массив байтовых массивов другой байтовый массив?
У меня есть очень медленный код. Я знал, что так будет, и теперь это так. По сути, я читаю файлы из нескольких каталогов. Имена файлов меняются, а данные - нет. Чтобы определить, прочитал ли я файл, я хэширую его байты и сравниваю их со списком хэшей уже обработанных файлов. В каждом каталоге ок...
Могут ли структуры содержать поля ссылочных типов
Могут ли структуры содержать поля ссылочных типов? И если они могут, это плохая практика?
C # Как найти размер ссылочного типа
Мне было интересно, есть ли способ узнать размер ссылочного типа в C #. Я немного погуглил, и на форумах кажется, что это невозможно. Я подумал, что спрошу вас, ребята, и посмотрю, знает ли кто-нибудь получше. В конце концов, инструменты профилирования должны это делать? Я знаю, что эта инфор...
Почему в C # String является ссылочным типом, который ведет себя как тип значения?
String является ссылочным типом, хотя он имеет большинство характеристик типа значения, таких как неизменяемость и наличие == перегрузки для сравнения текста, а не для проверки того, что они ссылаются на один и тот же объект. Почему же тогда строка не является просто типом значения?
Можете ли вы иметь класс в структуре?
Возможно ли в C # иметь структуру с переменной-членом, которая является типом класса? Если да, то где хранится информация: в стеке, куче или в обоих?
В чем разница между структурой и классом в .NET?
В чем разница между структурой и классом в .NET?