IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

error : 'tr' was not declared in this scope

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 20
    Points : 13
    Points
    13
    Par défaut error : 'tr' was not declared in this scope
    Bonjour,
    J'ai écrit une classe Session qui n'est pas une classe graphique mais j'utilise des classes de Qt comme QString, QDateTime, QDate et QTime.
    A la compilation, j'obtiens 2 erreurs que je ne comprends pas :

    1. error: `tr' was not declared in this scope
    et
    2. error: `m_sessionStartDateTime' was not declared in this scope

    Concernant cette deuxième erreur, il s'agit d'un membre privé de la classe, je ne comprends donc pas pourquoi j'obtiens cette erreur

    Z:\workspace\UIConnect>make -f Makefile.Release
    g++ -c -O2 -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEB
    UG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2009.01\qt\include\QtCor
    e" -I"c:\Qt\2009.01\qt\include\QtGui" -I"c:\Qt\2009.01\qt\include" -I"." -I"c:\Qt\2009.01\qt\include
    \ActiveQt" -I"release" -I"." -I"c:\Qt\2009.01\qt\mkspecs\win32-g++" -o release\main.o main.cpp
    g++ -c -O2 -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEB
    UG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"c:\Qt\2009.01\qt\include\QtCor
    e" -I"c:\Qt\2009.01\qt\include\QtGui" -I"c:\Qt\2009.01\qt\include" -I"." -I"c:\Qt\2009.01\qt\include
    \ActiveQt" -I"release" -I"." -I"c:\Qt\2009.01\qt\mkspecs\win32-g++" -o release\Session.o Session.cpp

    Session.cpp: In member function `void Session::openSession(Account&)':
    Session.cpp:13: error: `tr' was not declared in this scope
    Session.cpp:15: error: `tr' was not declared in this scope
    Session.cpp: In function `void setSessionDateTime(QDateTime&)':
    Session.cpp:43: error: `m_sessionStartDateTime' was not declared in this scope
    Session.cpp:44: error: `m_sessionStartDate' was not declared in this scope
    Session.cpp:45: error: `m_sessionStartTime' was not declared in this scope
    Session.cpp:43: warning: unused variable 'm_sessionStartDateTime'
    Session.cpp:44: warning: unused variable 'm_sessionStartDate'
    Session.cpp:45: warning: unused variable 'm_sessionStartTime'
    mingw32-make: *** [release/Session.o] Error 1

    Lorsque je fais hériter ma classe Session de QWidget, l'erreur 'tr' disparaît mais je ne sait pas si cela a du sens de faire hériter cette classe de QWidget.

    PS: J'ai mis en PJ les sources de Session.cpp et Session.h

    D'avance merci pour votre aide

    Hervé
    Fichiers attachés Fichiers attachés

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Salut
    tr est une fonction static de QObject
    http://qt.developpez.com/doc/4.4/qobject/#tr
    Tu peut donc l'utiliser n'importe où. si tu n'est pas dans une classe dérivant de Qobject, tu peut faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Qstring ma string = QObject::tr("salut");
    Pour ce qui est d'hériter de QObject ou QWidget, c'est à toi de voir.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    Merci Yan pour l'info sur tr. J'ai choisi d'utiliser QObject::tr
    Pour l'autre erreur, j'avais oublié de mettre Session:: dans la déclaration de la méthode

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut aide
    Bonjour ,
    J'ai écrit une classe de tests mais j'ai des erreurs que j'arrive pas à trouver s'il vous plait aidez moi . Voici les erreurs :
    [root@localhost Tests_XA]# g++ -c TXA_8REED.cpp
    TXA_8REED.cpp: In member function ‘bool TXA_8REED::connexionTest()’:
    TXA_8REED.cpp:94: erreur: ‘setLed’ was not declared in this scope
    TXA_8REED.cpp: In member function ‘bool TXA_8REED::ledTest()’:
    TXA_8REED.cpp:283: erreur: cannot call member function ‘bool XA_NOTFIXEDADDR::setLed(bool)’ without object
    TXA_8REED.cpp:288: erreur: cannot call member function ‘bool XA_NOTFIXEDADDR::setLed(bool)’ without object
    TXA_8REED.cpp:294: erreur: ‘setLed’ was not declared in this scope
    TXA_8REED.cpp: In member function ‘bool TXA_8REED::testSetAddr()’:
    TXA_8REED.cpp:346: erreur: ‘setAddr’ was not declared in this scope
    TXA_8REED.cpp:357: erreur: ‘setLed’ was not declared in this scope
    TXA_8REED.cpp:362: erreur: ‘setLed’ was not declared in this scope

    Je vous envoie ci -joint les fichiers necessaires :
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/12/2013, 19h13
  2. Réponses: 4
    Dernier message: 31/07/2013, 17h02
  3. getaddrinfo was not declared in this scope ?
    Par dr.c0der_ dans le forum C
    Réponses: 2
    Dernier message: 30/04/2009, 03h14
  4. QFormLayout was not declared in this scope
    Par kronos85 dans le forum Débuter
    Réponses: 5
    Dernier message: 11/12/2008, 03h30
  5. Réponses: 3
    Dernier message: 03/06/2007, 16h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo