//(hloubková kopie)
        public TridaVzor KopirujHloubkove()
        {   //funguje to tak že je potřeba vše udělat ručně ... nejprve si v této funkci vytvoříme novou instanci třídy a následně do ní překopírujeme
            //všechna data ze naší instance této třídy.
            TridaVzor trV = new TridaVzor();

            trV   = this.MemberwiseClone() as TridaVzor;
            trV.b = new B()
            {
                cislo = this.b.cislo
            };
            return(trV);
        }
        public void vykonej()
        {
            //Vzorový priklad
            TridaVzor t1 = new TridaVzor {
                a = 2
            };
            TridaVzor t2;

            //špatně .... pouze se přehodí reference
            t2 = t1;
            //vykonej mělkou kopii
            t2 = t1.KopirujMelce();
            //vykonej hloubokovou kopii (správně)
            t2 = t1.KopirujHloubkove();
        }