2016-11-13 45 views
-2

我目前正在使用QT开发我的第一个GUI cpp应用程序。现在我的目标是通过两个按钮向用户显示对话:确定和取消。我已经使用信号和插槽编辑器来取消关闭窗口,但是我似乎无法找到并设法做的事情是在单击OK时从另一个.cpp文件运行一个函数。我用google搜索过,没有答案似乎是相关的。来自另一个.cpp文件的QT调用函数C++

文件 “mydefault.cpp” -如何调用函数 “calldefaults()” - 这我试着打电话给在 “server.cpp”

void calldefaults(){ 
... 
... 
... 
} 

问题

void MyDefault::on_pushButton_clicked() 
{ 
    \\ call function from another .cpp file 
} 

功能从“mydefaults.cpp”

“server.cpp”从任何线索或提示都超过欢迎,如果答案是超级转储只是把它扔在我:)

谢谢

+1

你的意思[如何在另一个文件中的函数调用?](http://stackoverflow.com/questions/15891781/how-to-call-on-a-function-found-on-another-file ) – saygins

+1

请参阅您的书关于声明和定义以及头文件。您可以将函数声明放置在头文件中,并在包含该头文件时使其可用。顺便说一句,有'QDialog'这似乎是你正在努力完成 – krzaq

回答

0

这对于在C/C++(而不是Java等)中理解这一点很重要。每个.c/.cpp文件分别编译,然后链接在一起。当编译mydefault.cpp时,它需要知道calldefaults()函数存在。要做到这一点,你需要所谓的“原型”。在mydefault.cpp文件的开头,所有函数的声明之外,放线,看起来像:

void calldefaults(); 

,并调用的功能等:

calldefaults(); 

,将工作 - 如果你有链接问题,确保这两个文件都包含在您的编译器命令中。

+0

对于较大的系统,原型(第一代码)将进入一个.h文件,该文件将在#include中的每个源文件中调用功能。 – Mikes