Cześć,
Problem jest następujący. Gdy tworzę egzemplarz klasy Stack deklarując typ jako var, to kompilator nie zgłasza zastrzeżeń. Gdy jednak zamienię var na typ zgodny z klasą, to pojawia się błąd. I tutaj mam kłopot, będę wdzięczny za odpowiedź :)
class Program
{
public static void Main(string[] args)
{
//Stack s = new Stack<int>(); //Błąd Program.Stack<T>' requires 1 type arguments
var s = new Stack<int>();
s.Push(2);
s.Push(5);
Console.WriteLine(s.Pop());
Console.WriteLine(s.Pop());
Console.ReadKey();
}
public class Stack<T>
{
int position;
public T[] list = new T[10];
public void Push(T obj)
{
list[position++] = obj;
Console.WriteLine("Push");
}
public T Pop() => list[--position];
}
}