2013-02-19 3 views
-4

Я попытался скомпилировать эту функцию с помощью C++ без успеха.java stack - pop

это код Java. В основном, есть вызов «тест». Я просто хочу знать, если стек s гоняет или что S передается частично (без 7) из-за s.pop()

bool test(stack<int> s, int x) { 
    int y; 
    if (!s.empty()) { 
     y = s.pop(); 
     return x==y || test(s,y); 
    } 
    else return false; 
} 

int main() 
{ 
    stack<int> s; 
    s.push(2); 
    s.push(5); 
    s.push(1); 
    s.push(2); 
    s.push(7); 
    int x = 4; 
    test(s, s.pop()); 
return (0); 
} 
+8

Где Java во всем этом? – amphibient

+4

Конечно, если вы прочитаете этот вопрос назад, вы поймете, что его невозможно понять. –

+0

Показать ошибки компиляции – noMAD

ответ

1

Если вы используете зЬй :: стек, поп() не возвращает значение. Вы должны использовать top() для доступа к верхнему элементу. Затем вы можете использовать pop(), чтобы удалить его из стека.

 Смежные вопросы

  • Нет связанных вопросов^_^