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. How to call a function from another cpp file
Forum Updated to NodeBB v4.3 + New Features

How to call a function from another cpp file

Scheduled Pinned Locked Moved General and Desktop
21 Posts 3 Posters 9.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.
  • H Offline
    H Offline
    herculis
    wrote on last edited by
    #12

    i did what u suggested but its not working.Not getting any error but not working also.
    plz help

    1 Reply Last reply
    0
    • H Offline
      H Offline
      herculis
      wrote on last edited by
      #13

      @
      Header.h
      class ap
      {
      Q_OBJECT
      public slot:
      void open();
      }

      call.cpp
      include header.h
      {
      class ap:: open()
      {
      }
      }
      

      on.h
      include header.h
      {
      class on
      private:
      ap*m_call

      }

      on.cpp

      include header.h
      {
      

      m_call = new ap(this);
      connect(openButton,SIGNAL(clicked), m_call, SLOT(open));@

      1 Reply Last reply
      0
      • I Offline
        I Offline
        Ildar
        wrote on last edited by
        #14

        Try rename file names: you must have 4 files:
        call.h
        call.cpp
        on.h
        on.cpp

        And, please show to us all files acrtual contents, not pseudocode.

        1 Reply Last reply
        0
        • H Offline
          H Offline
          herculis
          wrote on last edited by
          #15

          i added header file in the program but then also its not working i have to create instance, with this it will work i guess i did that also means i created one object of the class where the function is and put that object in connect command but its not working please help
          can a one give me an exmaple or a link for "calling a function from other cpp file" so that i will get an idea how to do that.

          1 Reply Last reply
          0
          • I Offline
            I Offline
            Ildar
            wrote on last edited by
            #16

            Just create new project (Test) and add there files:

            @
            // call.h
            #ifndef CALL_H
            #define CALL_H

            #include <QObject>

            class call : public QObject
            {
            Q_OBJECT

            public:
            explicit call(QObject *parent = 0);

            public slots:
            void open();
            };

            #endif // CALL_H@

            @
            // call.cpp
            #include "call.h"
            #include <qdebug.h>

            call::call(QObject *parent): QObject(parent)
            {}

            void call::open()
            {
            qDebug() << "CALL";
            }
            @

            @
            // on.h
            #ifndef ON_H
            #define ON_H

            #include <QObject>
            #include "call.h"

            class on : public QObject
            {
            Q_OBJECT

            public:
            explicit on(QObject *parent = 0);

            signals:
            void mySignal();

            private:
            call *m_call;
            };

            #endif // ON_H
            @

            @
            // on.cpp
            #include "on.h"

            on::on(QObject *parent): QObject(parent)
            {
            m_call = new call(this);

            connect(this, &on::mySignal, m_call, &call::open);

            emit mySignal();
            }
            @

            @
            // main.cpp
            #include "on.h"

            int main(int argc, char *argv[])
            {
            on *myOn = new on();
            }
            @

            @
            // Test.pro
            HEADERS +=
            call.h
            on.h

            SOURCES +=
            call.cpp
            on.cpp
            main.cpp
            @

            1 Reply Last reply
            0
            • H Offline
              H Offline
              herculis
              wrote on last edited by
              #17

              Thanks this works but in my code its not working dont know why
              Thanks though.

              1 Reply Last reply
              0
              • H Offline
                H Offline
                herculis
                wrote on last edited by
                #18

                i am getting error in my prog when i write
                @m_call=new call (this)@
                ''that no instance of constructor''

                1 Reply Last reply
                0
                • I Offline
                  I Offline
                  Ildar
                  wrote on last edited by
                  #19

                  Simpify the code and show it.

                  1 Reply Last reply
                  0
                  • H Offline
                    H Offline
                    herculis
                    wrote on last edited by
                    #20

                    ok now i know the problem when i define the class contructore it has arguments in it thats why i am not able to create object.Do you know any solution regrading this how can i create object of a class whose constructor has arguments like bool*a,QWidget parent = 0
                    means
                    @call(bool
                    a ,QWidget *parent = 0,QObject *parent)@

                    1 Reply Last reply
                    0
                    • I Offline
                      I Offline
                      Ildar
                      wrote on last edited by
                      #21

                      Please, read books about C++ and Qt.

                      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