#include
using namespace std;
class seqstack
{
private:
int top;//顶指针
int* data;//建立数组
public:
seqstack()
{
int size;
cin >> size;
int* data = new int[size];
top = -1;
}
void output()
{
cout << endl;
cout << "当前栈的长度为:" << top + 1 << endl;
if (top != -1)
{
for (int i = 0; i <= top; i++)
{
cout << "当前栈的内容为:" << data[i] << endl;
}
}
}
void insert(int value)
{
top++;
data[top] = value;
}
int pop()
{
int temp = data[top];
top--;
return temp;
}
void getlength()
{
cout << "长度为:" << top + 1 << endl;
}
};
int main()
{
seqstack mystack;
cout << endl;
mystack.output();
for (int i = 0; i < 10; i++)
{
mystack.insert(i);
}
return 0;
}
这个就算分配了50的空间,也会运行中止,哪里错了呢?