À l'aide de la pile de la standard template library

Je viens de coder un petit programme permettant de transférer un personnage d'une chaîne sur la pile et de l'imprimer en haut de la valeur.
Ils sont de simples codes, mais avec un concept différent,je voudrais demander à qui un des le code est le plus efficace et pourquoi?

1er code

#include<string>
#include<iostream>
#include<stack>
using namespace std;
int main(){
   string str ;
   stack<char> s;
   cin >> str ;
   for(int i=0;i<str.size();i++){
       cout << str[i] << "\n";
       s.push(str[i]);
       cout << "Top of the stack " << s.top() << endl;}
 cout << "\n" << endl;
 return 0;}

2ème code à l'Aide d'un Itérateur

#include<string>
#include<iostream>
#include<stack>
using namespace std;
int main(){
   string str ;
   stack<char> s;
   cin >> str ;
   for(string::iterator itr = str.begin();itr!=str.end();itr++){
             cout << *itr << "\n";
             s.push(*itr);
             cout << "Top of the stack " << s.top() << endl;}
 cout << "\n" << endl;
 return 0;}

Ils sont tout simplement les deux codes, je veux juste savoir qui est le plus efficace ??

  • Vous ne remarquerez aucune différence entre les deux méthodes depuis cout va prendre beaucoup plus de temps que d'extraire le chars à partir de la chaîne.
InformationsquelleAutor KapilSantore | 2014-07-22