Witam,
Mam problem z którym walczę od jakiegoś czasu i nie mogę sobie z nim poradzić.
Mój program to aplikacja okienkowa Windows Forms Application, schemat mojego kodu:
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Windows.Forms;
namespace toto
{
public partial class Form1 : Form
{
List<List<int>> Lista_ukryta;
List<List<int>> Lista_jawna;
public Form1()
{
InitializeComponent();
Lista_ukryta = new List<List<int>>();
Lista_jawna = new List<List<int>>();
}
//tutaj deklaracje wyjatkow, funkcje przyciskow, funkcja wczytywania danych do Lista_ukryta
public void ALGORYTM(List<List<int>> Lista_ukryta, List<List<int>> Lista_jawna)
{
//tutaj potrzebne kopiowanie głębokie ;/
}
private void button1_Click(object sender, EventArgs e)
{
ALGORYTM(Lista_ukryta, Lista_jawna);
}
}
Potrzebuję aby cała lista list czyli Lista_ukryta była skopiowana do innej listy list np. do struktury Lista_Jawna. Oczywiście kopiowanie forem będzie kopiowaniem płytkim i modyfikacja jednej listy zmodyfikuje też drugą bo referencja do pamięci jest jedna i ta sama, a tego chciałbym właśnie uniknąć...
Czytałem i walczę z ICloneable - implementacją interfejsu, ale bez skutku. Chciałbym implementować dalej algorytm a jestem w szachu bo potrzebuję co najmniej dwóch niezależnych pamięciowo struktur danych. Serdecznie proszę o wskazówki.