Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Cann't write connect in main.cpp
Forum Updated to NodeBB v4.3 + New Features

Cann't write connect in main.cpp

Scheduled Pinned Locked Moved Unsolved General and Desktop
14 Posts 4 Posters 3.3k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • m.sueM m.sue

    Hi @L.Gogs

    Your class does not have a Q_OBJECT macro.

    -Michael.

    L.GogsL Offline
    L.GogsL Offline
    L.Gogs
    wrote on last edited by
    #4

    @m.sue
    yes I know but when I wrote it, I had errors

    Pradeep KumarP 1 Reply Last reply
    0
    • Pradeep KumarP Offline
      Pradeep KumarP Offline
      Pradeep Kumar
      wrote on last edited by
      #5
      class Taz742 : public QObject
      {
      Q_OBJECT 
      public:
          Taz742()
          {
              tm = new QTimer();
          }
      
          QTimer *tm;
          ~Taz742()
          {
              delete tm;
          }
      
      public slots:
          void Print()
          {
              qDebug() << "Taz742";
          }
      };
      

      Thanks,

      Pradeep Kumar
      Qt,QML Developer

      L.GogsL 1 Reply Last reply
      0
      • L.GogsL L.Gogs

        @m.sue
        yes I know but when I wrote it, I had errors

        Pradeep KumarP Offline
        Pradeep KumarP Offline
        Pradeep Kumar
        wrote on last edited by
        #6

        @L.Gogs

        can u post what errors occurred.

        Thanks,

        Pradeep Kumar
        Qt,QML Developer

        L.GogsL 1 Reply Last reply
        1
        • Pradeep KumarP Pradeep Kumar

          @L.Gogs

          can u post what errors occurred.

          Thanks,

          L.GogsL Offline
          L.GogsL Offline
          L.Gogs
          wrote on last edited by
          #7

          @Pradeep-Kumar
          of course :))

          undefined reference to 'vtable for Taz742'

          m.sueM 1 Reply Last reply
          0
          • Pradeep KumarP Pradeep Kumar
            class Taz742 : public QObject
            {
            Q_OBJECT 
            public:
                Taz742()
                {
                    tm = new QTimer();
                }
            
                QTimer *tm;
                ~Taz742()
                {
                    delete tm;
                }
            
            public slots:
                void Print()
                {
                    qDebug() << "Taz742";
                }
            };
            

            Thanks,

            L.GogsL Offline
            L.GogsL Offline
            L.Gogs
            wrote on last edited by
            #8
            This post is deleted!
            1 Reply Last reply
            0
            • L.GogsL L.Gogs

              @Pradeep-Kumar
              of course :))

              undefined reference to 'vtable for Taz742'

              m.sueM Offline
              m.sueM Offline
              m.sue
              wrote on last edited by
              #9

              Hi @L.Gogs

              Your Taz742 destructor is virtual, by inheritance from QObject. A class with virtual functions should be defined in its own file: Taz742.cpp and Taz742.h

              -Michael.

              L.GogsL 1 Reply Last reply
              1
              • m.sueM m.sue

                Hi @L.Gogs

                Your Taz742 destructor is virtual, by inheritance from QObject. A class with virtual functions should be defined in its own file: Taz742.cpp and Taz742.h

                -Michael.

                L.GogsL Offline
                L.GogsL Offline
                L.Gogs
                wrote on last edited by
                #10

                @m.sue
                Thanks...
                but how can I write connect in main.cpp

                m.sueM 1 Reply Last reply
                1
                • L.GogsL L.Gogs

                  @m.sue
                  Thanks...
                  but how can I write connect in main.cpp

                  m.sueM Offline
                  m.sueM Offline
                  m.sue
                  wrote on last edited by
                  #11

                  Hi @L.Gogs

                  Just #include the header file. Then you can use your class there

                  -Michael.

                  L.GogsL 1 Reply Last reply
                  1
                  • m.sueM m.sue

                    Hi @L.Gogs

                    Just #include the header file. Then you can use your class there

                    -Michael.

                    L.GogsL Offline
                    L.GogsL Offline
                    L.Gogs
                    wrote on last edited by
                    #12

                    @m.sue
                    no no, I want to write connect into main.cpp without any other header or cpp file.

                    m.sueM mrjjM 2 Replies Last reply
                    0
                    • L.GogsL L.Gogs

                      @m.sue
                      no no, I want to write connect into main.cpp without any other header or cpp file.

                      m.sueM Offline
                      m.sueM Offline
                      m.sue
                      wrote on last edited by m.sue
                      #13

                      Hi @L.Gogs

                      To be blunt: You have to comply with the rules of the computer language (C++ in this case) or not use it. You cannot discuss such issues with the compiler/linker.

                      -Michael.

                      1 Reply Last reply
                      1
                      • L.GogsL L.Gogs

                        @m.sue
                        no no, I want to write connect into main.cpp without any other header or cpp file.

                        mrjjM Offline
                        mrjjM Offline
                        mrjj
                        Lifetime Qt Champion
                        wrote on last edited by mrjj
                        #14

                        @L.Gogs said in Cann't write connect in main.cpp:

                        no no, I want to write connect into main.cpp without any other header or cpp file.

                        https://stackoverflow.com/questions/34928933/why-is-important-to-include-moc-file-at-end-of-a-qt-source-code-file

                        You can hack it but using a .h file is the right way and besides this approach might have issues.
                        I never used it as its non common to only have .cpp file outside school projects.

                        1 Reply Last reply
                        0

                        • Login

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Users
                        • Groups
                        • Search
                        • Get Qt Extensions
                        • Unsolved