犊子小白 2018-10-08 03:28 采纳率: 0%
浏览 852

如何将C++中的公有改为私有的。代码如下,求解答。

#include
#include

using namespace std;

typedef char Element;
class SeqStack{

public :
    int MaxSize;
    Element *elements;
    int top;
    int length;
    SeqStack(Element *e,int Size)
    {
        top=-1;
        length=0;
        elements=e;
        MaxSize=Size;
    }
   int PushSeqStack(Element element);
   void PopSeqStack();
   void ClearSeqStack();
   Element PeekSqeStack();

};
/** 向栈中压入元素,返回压入的结果(true/false) */
int SeqStack::PushSeqStack(Element element){
if(top == MaxSize- 1){
cout<<"栈已满"<<endl;
}
top++; //栈顶指针+1,以便加.01 004入新的元素
//将新插入的元素赋值给栈顶
elements[top] = element;
length++;

}

Element SeqStack::PeekSqeStack()
{
return elements[top];
}

void SeqStack::PopSeqStack(){
//返回栈顶指向的元素
//*element = elements[top];
//cout<<"弹出元素"<<elements[top]<<endl;
top--;
length--;

}
void SeqStack::ClearSeqStack(){
top = -1;
length = 0;
}

int main()
{
Element* e=new Element[100];
bool IsOk=true;
SeqStack Stack(e,100);
string s;
while(!cin.eof())
{
cin>>s;
Stack.ClearSeqStack();
for(int i=0;i<s.size();i++)
{
if(s[i]=='('||s[i]=='{'||s[i]=='[')
{
Stack.PushSeqStack(s[i]);
}
else if(s[i]==']'||s[i]==')'||s[i]=='}')
{
if((Stack.PeekSqeStack()=='('&&s[i]==')')||(Stack.PeekSqeStack()=='{'&&s[i]=='}')||(Stack.PeekSqeStack()=='['&&s[i]==']'))
{
Stack.PopSeqStack();
}
else
{
IsOk=false;
}
}
}
if(IsOk==false)
{
cout<<"NO"<<endl;
IsOk=true;
continue;
}
if(Stack.top==-1)
{
cout<<"YES"<<endl;
}else{
cout<<"NO"<<endl;
}
}
return 0;
}

  • 写回答

2条回答 默认 最新

  • SiGoYi 2018-10-08 08:38
    关注

    public 改为 private就OK啊,但是private属性和方法不能在类外访问

    评论

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图2.0 版本点聚合中Marker的位置无法实时更新,如何解决呢?
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题