Вопросы по теме 'boxing'
Что такое бокс и распаковка и каковы компромиссы?
Ищу ясный, лаконичный и точный ответ.
В идеале как фактический ответ, хотя ссылки на хорошие объяснения приветствуются.
55554 просмотров
schedule
18.05.2024
Приводит ли вызов метода к типу значения к упаковке в .NET?
Я только что участвовал в ответе на вопрос о переполнении стека Все ли в .NET является объектом? .
И один плакат (в комментариях к принятому ответу), похоже, думал, что выполнение вызова метода для типа значения привело к боксу. Он указал мне...
2743 просмотров
schedule
05.04.2024
Бокс, что ты предпочитаешь и что быстрее?
Короче, я считаю, что бокс - это раздражение. Давайте посмотрим на альтернативы ...
public class Box<T>
where T : struct
{
public T Value { get; set; }
public static implicit operator T(Box<T> box)
{
return...
1754 просмотров
schedule
10.03.2022
В чем разница между боксом/распаковкой и приведением типов?
В чем разница между боксом/распаковкой и приведением типов?
Часто эти термины кажутся взаимозаменяемыми.
47286 просмотров
schedule
14.07.2023
Приведение типа к объекту с использованием объекта типа в C#
До сих пор это оказалось немного сложным для меня. Мне интересно, можно ли ввести объект с помощью объекта System.Type.
Я проиллюстрировал ниже, что я имею в виду:
public interface IDataAdapter
{
object Transform(object input);
Type...
18380 просмотров
schedule
20.07.2023
Вызывает ли оператор VB.NET If бокс?
Те из нас, кто работал в VB/VB.NET, видели код, похожий на эту мерзость:
Dim name As String = IIf(obj Is Nothing, "", obj.Name)
Я говорю «мерзость» по трем простым причинам:
IIf — это функция , все параметры которой оцениваются;...
691 просмотров
schedule
16.02.2022
распаковка бокса, cglib, spring и тайна NoSuchMethodError
Я использую Spring и GWt в своем проекте. В нескольких случаях CGLIB выдает NoSuchMethodError , когда я вызываю метод прокси-сервера spring bean.
Если я посмотрю на ошибку, она покажет мне, что она пытается найти метод с объектом Integer вместо...
601 просмотров
schedule
17.03.2024
Упаковка/распаковка - только типы значений? Ref.types - литье?
Из MSDN я прочитал, что упаковка/распаковка предназначена для обработки типов value как объектов. Но когда я читаю про ArrayList, там написано, что он еще и боксирует. Поэтому я совершенно запутался, поскольку ArrayList содержит значения и...
1935 просмотров
schedule
19.11.2023
Как универсальное ограничение предотвращает упаковку типа значения с неявно реализованным интерфейсом?
Мой вопрос несколько связан с этим: Явно реализованный интерфейс и общее ограничение .
Мой вопрос, однако, заключается в том, как компилятор включает универсальное ограничение, чтобы устранить необходимость упаковки типа значения, который явно...
3309 просмотров
schedule
15.05.2023
Почему CLR позволяет изменять неизменяемые типы значений в штучной упаковке?
У меня есть ситуация, когда у меня есть простой неизменяемый тип значения:
public struct ImmutableStruct
{
private readonly string _name;
public ImmutableStruct( string name )
{
_name = name;
}
public string Name...
581 просмотров
schedule
25.09.2022
С# - Можно ли объединять ящики?
Бокс преобразует тип значения в тип объекта. Или, как говорит MSDN, бокс — это «операция по заключению структуры в объект ссылочного типа в управляемой куче».
Но если вы попытаетесь углубиться в это, взглянув на код IL, вы увидите только волшебное...
956 просмотров
schedule
05.09.2023
Какие улучшения производительности были внесены в операции упаковки и распаковки в среде CLR, если таковые имеются?
Несколько месяцев назад я присутствовал на семинаре, и спикер сделал заявление о том, что общая стоимость операции упаковки или распаковки была снижена по сравнению с .NET 1.1. Я просмотрел свои (плохие) заметки и не могу определить, ссылается ли это...
1125 просмотров
schedule
14.01.2023
Упаковка типа объекта с переменной ссылочного типа
Бокс — это когда тип значения присваивается типу объекта. Это то же самое, когда ссылочный тип назначается объекту?
Что происходит, когда присваивается тип (который не является объектом)? Это тоже бокс?
int num=5;
object obj = num;...
5356 просмотров
schedule
04.09.2023
Бокс и распаковка тоже кастинг?
Когда мы преобразуем типы данных между примитивными типами данных, это называется приведением типов данных.
Но при преобразовании между ValueType и ReferenceType мы называем это упаковкой и распаковкой.
Можно ли бокс и распаковку тоже назвать...
767 просмотров
schedule
08.02.2024
Подробно о том, что происходит, когда структура реализует интерфейс
Недавно я столкнулся с этим вопросом Stackoverflow: Когда использовать структуру?
В нем был ответ, в котором говорилось что-то довольно глубокое:
Кроме того, имейте в виду, что когда структура реализует интерфейс - как это делает...
8017 просмотров
schedule
02.07.2023
Scala странная неявная ошибка преобразования бокса
Может кто-нибудь сказать мне, почему следующее не работает?
object TestObject {
def map(f: (Double, Double) => Double, x2: Array[Double]) = {
val y = x2.zip( x2 )
val z = y.map(f)
z
}
}
Выдает эту ошибку:...
1239 просмотров
schedule
23.07.2023
Разница в поведении бокса в System.Dynamic.ExpandoObject
Недавно я начал программировать на C# и писать приложения ASP.NET MVC. Я делал что-то похожее на это:
var hashtable = new Hashtable();
hashtable.Add("First", 12);
hashtable.Add("Second", 12);
if(hashtable["First"] == hashtable["Second"])
{...
220 просмотров
schedule
24.07.2022
При чем здесь коробка?
Просматривая StackOverflow, я наткнулся на следующий ответ:
https://stackoverflow.com/a/3817367/162694
// ... removed unneeded code
/// This type is intended for private use within Singleton only.
type private SyncRoot = class end
type...
417 просмотров
schedule
17.08.2023
Приводят ли интерфейсы со свойствами структуры к боксу?
Скажем, у меня есть некоторая структура и некоторый интерфейс, который, среди прочего, предоставляет эту структуру как свойство:
public struct MyStruct{
public readonly string Hello;
public MyStruct(string world){
Hello = world;...
116 просмотров
schedule
18.02.2024
Как избежать упаковки общего аргумента
Есть ли способ избежать упаковки общего аргумента метода (без интерфейса)?
В фиктивном методе расширения я попробовал ограничение where T : class , чтобы принудительно интерпретировать T как минимум object , но бокс все еще происходит....
301 просмотров
schedule
01.05.2022