|
что-то не то с копированием ссылок
|
|||
---|---|---|---|
#18+
Есть код: Код: c# 1. 2. 3. 4. 5. 6.
object o = sss; это как я понимаю, ссылка на экземпляр структуры sss, т.е. имеем 2 ссылки на один и тот же объект в памяти. Но почему-то поле cmdname у "sss" и "o" разные. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 07:42 |
|
что-то не то с копированием ссылок
|
|||
---|---|---|---|
#18+
может тут что зарыто: Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 08:08 |
|
что-то не то с копированием ссылок
|
|||
---|---|---|---|
#18+
ДАПobject o = sss; это как я понимаю, ссылка на экземпляр структуры sss, т.е. имеем 2 ссылки на один и тот же объект в памяти. Но почему-то поле cmdname у "sss" и "o" разные. Потому что если у вас MyStruct действительно структура, то она - значимый тип, и располагается на стеке. При присвоении значения в тип object происходит boxing, и экземпляр object с завернутым внутрь значением структуры располагается в куче - мы получаем 2 независимых значения. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2015, 08:51 |
|
|
start [/forum/topic.php?fid=20&tid=1401902]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 378ms |
total: | 511ms |
0 / 0 |