Проблема клонирования стека: ошибка .NET или ожидаемое поведение? - PullRequest
1 голос
/ 09 августа 2011

Я столкнулся с этой проблемой при клонировании стека ... не уверен, что это ошибка .NET или ожидаемое поведение.Мнения?

Dim myStack As New Stack(Of Integer)({2,1,3})
Response.Write(String.Join(",",myStack.Clone) & "<br>" & String.Join(",",myStack.Clone.Clone))

вывод:

2,1,3
3,1,2 <- I expected 2,1,3

1 Ответ

8 голосов
/ 09 августа 2011

Это не ошибка .Net. Тип Stack(Of T) не обладает методом или свойством Clone. Это демонстрирует следующий код, который не компилируется на стандартном консольном проекте VB.Net

Dim stack As New Stack(Of Integer)({2, 1, 3})
Console.WriteLine(String.Join(",", stack.Clone))

Метод Clone, к которому нужно привязаться, должен быть методом расширения, определенным где-то в вашем проекте. Ошибка или дизайн поведения лежит там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...