<StackOfInteger.h>
#ifndef STACK_H
#define STACK_H

class StackOfIntegers
{
public:
  StackOfIntegers();
  bool empty();
  int peek();
  int push(int value);
  int pop();
  int getSize();

private:
  int elements[100];
  int size;
};

#endif

<StackOfInteger.cpp>
#include \"StackOfIntegers.h\"

StackOfIntegers::StackOfIntegers()
{
  size = 0;
}

bool StackOfIntegers::empty()
{
  return (size == 0);
}

int StackOfIntegers::peek()
{
    return elements[size - 1];
}

int StackOfIntegers::push(int value)
{
  return elements[size++] = value;
}

int StackOfIntegers::pop()
{
  return elements[--size];
}

int StackOfIntegers::getSize()
{
  return size;
}


<TestStackOfInteger.cpp>
#include <iostream>
#include \"StackOfIntegers.h\"
using namespace std;

int main()
{
  StackOfIntegers stack;
 
  int n;
  
  cout<<\"숫자 입력: \";
  cin>>n;
  cout<<endl;

 
  if (n==1)
  {
   cout<<n<<endl;
  }

 
  for(int i=2; i<=n; i++)
  {
   if(n%i==0)
    {
     n=n/i;
  stack.push(i);
 
 while (!stack.empty())
  cout<<stack.pop()<<\" \";
    }
   
  
  }
  cout<<endl;
  return 0;
}

소인수 분해는 되는데 StackOfInteger 클래스를 이용해서

역순으로 출력해야되는거거든여

근데 안됨므 ㅜㅜ

뭐가 잘못됬는지 지적좀 부탁부탁