本文整理汇总了C++中Pila::empty方法的典型用法代码示例。如果您正苦于以下问题:C++ Pila::empty方法的具体用法?C++ Pila::empty怎么用?C++ Pila::empty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pila
的用法示例。
在下文中一共展示了Pila::empty方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
string& Evaluador::aPosfija(const string& expInfija) {
int posP;
Pila operadores;
string caracTemp;
string h = expInfija;
int pos = 0;
string res = "";
string temp = "";
posP = h.find_first_of("p");
//recorrer la string
h = h + ")";
operadores.push("(");
while (!operadores.empty()) {
caracTemp = h[pos];
//caso que sea un parentesis izquierdo
if (caracTemp == "(") {
operadores.push(caracTemp);
pos++;
}
//caso que sea un operador como *,+,-
else if (caracTemp == "*" || caracTemp == "+" || caracTemp == "-") {
while (prioridades(operadores.top()) >= prioridades(caracTemp)) { // puede existir un error
res = res + operadores.top();
operadores.pop();
}
operadores.push(caracTemp);
pos++;
}
//caso de parentesis derecho
else if (caracTemp == ")") {
temp = operadores.top();
while (temp != "(") {
res = res + temp;
operadores.pop();
temp = operadores.top();
}
operadores.pop();
pos++;
}
//caso que sea un p#
else {
if (caracTemp == "p" && pos != posP) {
res = res + ",";
}
res = res + caracTemp;
pos++;
}
}
*posfija = res;
return *posfija;
}
示例2: main
int main(int argc, char *argv[])
{
Immagine I1("ME", "800x120");
Immagine I2("ME", "600x120");
Fotografia F1("ME", "200x120", 1,"Monti",false);
Fotografia F2("ME", "600x120", 2,"Mare",false);
Fotografia F3("ME", "200x1800", 3,"Laura",false);
Fotografia F4("ME", "100x1800", 4,"Cielo stellato",false);
Fotografia F;
// esempio di polimorfismo
//*************************************************
Immagine * vet[5];
vet[0]=&I1;
vet[1]=&F1;
vet[2]=&F2;
vet[3]=&I2;
vet[4]=&F3;
cout << "chiamata alla funzione virtuale (print):" << endl;
for(int i=0; i<5; i++){
vet[i]->print(); //binding dinamico
cout << "\n ";
}
cout << "\n ";
system("PAUSE");
//*************************************************
// test della pila
//**************************************************
Pila P;
// test funzione push
cout << "inserimento:" << endl;
if(P.push(F1)) cout << "inserimento riuscito"<< endl;
else cout << "Pila piena"<< endl;
if(P.push(F2)) cout << "inserimento riuscito"<< endl;
else cout << "Pila piena"<< endl;
if(P.push(F3)) cout << "inserimento riuscito"<< endl;
else cout << "Pila piena"<< endl;
if(P.push(F4)) cout << "inserimento riuscito"<< endl;
else cout << "Pila piena"<< endl;
// test funzioni visualizza, top e empty
cout << "contenuto della pila:" << endl;
if(!P.empty()) P.visualizza();
else cout << "Pila vuota!"<< endl;
if(!P.empty()) {
P.top(F);
cout << "elemento di testa:" << F.getID() << ": " << F.getS() << endl;
}
else cout << "Pila vuota!"<< endl;
system("PAUSE");
// test funzioni sposta, ricerca, swap. Gestione dell'eccezione.
cout << "sposto in testa l'elemento di chiave 1:" << endl;
try{
P.sposta(1);
}
catch (const bad_event & e) {
cout << e.what() << endl;
}
cout <<"provoco il lancio dell'eccezione:" << endl;
try{
P.sposta(999);
}
catch (const bad_event & e) {
cout << e.what() << endl;
}
cout << "contenuto della pila:" << endl;
if(!P.empty()) P.visualizza();
else cout << "Pila vuota!"<< endl;
system("PAUSE");
// test funzione pop
cout << "eliminazione:" << endl;
if(P.pop(F)) cout << "eliminazione riuscita"<< endl;
else cout << "Pila vuota"<< endl;
cout << "contenuto della pila:" << endl;
if(!P.empty()) P.visualizza();
else cout << "Pila vuota!"<< endl;
system("PAUSE");
// test STAMPA su file
cout << "stampo il contenuto della pila su file di testo." << endl;
ofstream myfile;
char nomefile[30];
cout << "inserire il nome del file: ";
cin.getline(nomefile,30);
myfile.open(nomefile, ios::out);
if(!myfile) cout << "operazione non riuscita!!!!" << endl;
else {
// P.stampa(myfile);
myfile << P;
myfile.close();
//.........这里部分代码省略.........