Tablice w class's

0

Mam do napisania program który ma umozliwić dodawanie skoczkow narciarskich w class'ach.
Mam pierwszą klasę Tskoczkowie, a w niej mam zadeklarowaną tablice jednowymiarową
skoczek której elementy są typu Tskoczek.

Chcę aby każdy elementy tablicy identyfikowany za pomocą liczb int (1,2,3...itd) zawierał dwa pola imie i naziwsko.

Mój kod programu wygląda następująco:

using System;
namespace skoki
{
         class Class1
	{
		

		class Tskoczkowie
		{
			private int IleSkoczkow;

			private Tskoczek[] skoczek;

			public Tskoczkowie() //konstruktor
			{
                this.IleSkoczkow = 0;
			}
			
			class Tskoczek
			{
				private string imie;
				private string nazwisko;
			}

			class Tpunkty
			{
                                    private int numer;
				private int punkty;
			}

			public void DodajSkoczka(string InputImie, string InputNazwisko)
			{
                                    this.skoczek[IleSkoczkow].imie = InputImie;
				this.skoczek[IleSkoczkow].nazwisko = InputNazwisko;
				this.IleSkoczkow++;
			}



		}

		[STAThread]
		static void Main(string[] args)
		{
			Console.WriteLine("Witaj w programie Skoczkowie Narciarscy");
			Tskoczkowie Zadowy2007 = new Tskoczkowie;

		}
	}
}

Kompilator zwraca nastepuący w miejscu: this.skoczek[IleSkoczkow].imie
nastepuący błąd:
Class1.cs(51): 'skoki.Class1.Tskoczkowie.Tskoczek.imie' is inaccessible due to its protection level
taki sam bład zwraca w miejscu this.skoczek[IleSkoczkow].nazwisko

Proszę o pomoc jak poprawić kod aby dzialał prawidłowo?

0

Widzę parę błędów w tym kodzie. Po pierwsze jeśli deklarujesz jakąś klasę, to żeby mieć dostęp z poziomu innych obiektów do ich zmiennych musisz zadeklarować je jako publiczne. W c# zaleca się korzystanie z właściwości np.

public int Wiek
{
get
{
return wiek;
}
set
{
wiek=value;
}
}

private int wiek;

Proponuję też skorzystać z List zamiast tablicy Array.

1 użytkowników online, w tym zalogowanych: 0, gości: 1