QT5中动态链接库的创建和调用(三)

来源:互联网 发布:长沙网络自考 编辑:程序博客网 时间:2024/05/21 10:50

3、显式调用


mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
#include <QLibrary>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}
MainWindow::~MainWindow()
{
    delete ui;
}
void MainWindow::on_pushButton_clicked()
{
    typedef int(*FUN2)(int, int); //  函数指针
    QLibrary lib("sld.dll");       //指定dll路径,可以不在exe目录下
    if (lib.load()) {
            qDebug() << "load ok!";            
            FUN2 add = (FUN2)lib.resolve("add");
            if (add) {
                qDebug() << "load add ok!";
                qDebug() << add(3, 5);
            }
        } else {
            qDebug() << "load error!";
        }
}

总结:1、显式调用目前只能调用外部函数,没有看到能调用类中的函数