
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
예시코드를 보다가 궁금한 게 생겼습니다.
class Stack 여기서 <T>를 붙인 게 Stack의 생성자를 만들어줬다고 생각하면 되나요?
만약 그렇다면 디폴트 생성자가 없으니 이 밑으로 Stack을 쓸 때는 매번 <T>에 해당하는 변수를 지정해줘야 하는 건가요?
Stack을 하나의 Class로 봐도 되는 건지 궁금해서 물어봅니다.
// 제너릭 클래스 선언 예시
class Stack<T>
{
private T[] elements;
private int top;
public Stack()
{
elements = new T[100];
top = 0;
}
public void Push(T item)
{
elements[top++] = item;
}
public T Pop()
{
return elements[--top];
}
}
// 제너릭 클래스 사용 예시
Stack<int> intStack = new Stack<int>();
intStack.Push(1);
intStack.Push(2);
intStack.Push(3);
Console.WriteLine(intStack.Pop()); // 출력 결과: 3
