Précédent   Forum des professionnels en informatique > C et C++ > C++
C++ Forum d'entraide technique sur le langage C++. Avant de poster -> F.A.Q C++
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/02/2012, 14h34   #1
Futur Membre du Club
 
Homme
Étudiant
Inscription : novembre 2011
Messages : 39
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2011
Messages : 39
Points : 19
Points : 19
Par défaut Bug a la compilation

Bonjour,

Je ne comprends pas pourquoi mon programme ne compile pas, avez vous des pistes ?

.h
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include        <string>
#include        <iostream>
#include        <stack>
 
#ifndef         CALCULATOR_HH
#define         CALCULATOR_HH
 
template<class T> class Calculator{
 public:
 
  std::stack<T>         stack;
 
 public:
 
  Calculator();
  ~Calculator();
 
  void                  push(int nb){
    this->stack.pop_back(nb);
  }
  T                     pop(){
    this->stack.pop_back();
    return this->stack;
  }
  void                  dump(){
    while (!this->stack.empty())
      std::cout << this->stack << std::endl;
  }
};
 
#endif
voici mon main.cpp
Code :
1
2
3
4
5
6
7
8
9
10
11
12
#include        "Calculator.hh"
 
int             main()
{
  Calculator    ptr;
 
  ptr.push(22);
  ptr.push(3);
  ptr.push(2);
  ptr.push(12);
  ptr.dump();
}
j'ai cette erreur :
Citation:
Calculator.cpp: In function ‘int main()’:
Calculator.cpp:5:14: error: missing template arguments before ‘ptr’
Calculator.cpp:5:14: error: expected ‘;’ before ‘ptr’
Calculator.cpp:7:3: error: ‘ptr’ was not declared in this scope
soryo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 14h48   #2
Membre Expert
 
Homme
Junior developer C/C++/Embedded system
Inscription : juin 2010
Messages : 656
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Junior developer C/C++/Embedded system

Informations forums :
Inscription : juin 2010
Messages : 656
Points : 1 371
Points : 1 371
Bonjour,

l'erreur est pourtant donnée mot pour mot
Citation:
Calculator.cpp:5:14: error: missing template arguments before ‘ptr’
Une simple traduction suffit.

Calculator est une classe template, il faut préciser le template..
Calculator<int> ptr;
Bousk est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 06/02/2012, 14h56   #3
Membre éprouvé
 
Homme Eric
Inscription : décembre 2010
Messages : 254
Détails du profil
Informations personnelles :
Nom : Homme Eric
Localisation : France

Informations forums :
Inscription : décembre 2010
Messages : 254
Points : 450
Points : 450
Juste une question: pourquoi l'argument de push n'est-il pas de type T?
therwald est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h34.


 
 
 
 
Partenaires

Hébergement Web