Здравствуйте! Помогите понять в чем ошибка!
Есть интерфейс
public interface ISerialize
{
void Write(BynaryWriter bw);
void Read(BynaryReader br);
}
и определена структура
public struct Point:ISerialize
{
public int x;
public int y;
...
...
void ISerialize.Write(BynaryWriter bw)
{
bw.Write(this.x);
bw.Write(this.y);
...
}
void ISerialize.Read(BynaryReader br)
{
this.x=br.ReadInt32();
...
}
}
есть класс, содержащий массив этой структуры,
и также реализующий интерфейс ISerialize
Вот пример кода
...
private Point[] mass;
...
void ISerialize.Read(BynaryReader br)
{
for(int i=0;i<mass.Length;i++)
{
((ISerialize)mass[i]).Read(br);// 1
}
...
}
...
в строке, помеченой 1, элемент массива после завершения метода остается
с нулевыми значениями, хотя метод Read в структуре считывает значения из потока
и присваивает их полям, но по возвращении — поля пустые (0 и null)
Помогите, пожайлуста!