小编Gre*_*ish的帖子

为什么qt5-default软件包中没有qmake-qt5

我使用sudo apt-get install qt5-default命令在Odroid XU3上安装了qt5-default,并希望使用终端运行qmake-qt5,但打印此命令未知。然后我查看了usr / share / qt5文件夹,发现里面只有doc-foder。我还查看了usr / bin文件夹,只能找到qmake-qt4,但找不到qmake-qt5。当我运行install命令时,我还读到一些库将被安装,所以我认为库不是问题。

接下来,我尝试从此页面https://launchpad.net/ubuntu/trusty/+package/qt5-qmake手动安装qmake-q5t,但是随后我收到一条消息,提示已经安装了较新版本的qmake-qt5。我使用find命令在整个系统中搜索了qmake-qt5,但无法检测到它。

最后,我还尝试使用此处描述的方法添加ubuntu-sdk ppa,网址https://askubuntu.com/questions/279421/how-can-i-install-qt-5-x-on-12-04-lts,但这也没有解决。

它与我的Odroid或Lubuntu有关系吗?还有其他安装qmake-qt5的方法吗?

我试图编译并使用已经安装的qt4做,这确实使用

qmake-qt4 -project
qmake-qt4
make
./helloworld 
Run Code Online (Sandbox Code Playgroud)

我想做同样的事情,但只用qt5

提前致谢

ubuntu qt qmake odroid

3
推荐指数
1
解决办法
1万
查看次数

是否可以从模板基类继承,但不能使派生类成为模板?

我试图从模板基类继承但是我得到了几个错误,因为我的派生类不是模板类.我也不希望它,我只是想分享一些变量,让派生类实现它们.

//base.h
template <typename T>
class Base
{

public:
     explicit Base(QWidget *parent);
    ~Base();

protected:
    QList<T*>* list;
    T* selectedObject;

};

//base.cpp
#include "base.h"

template <typename T>
Base<T>::Base(QWidget* parent)
{

}

template <typename T>
Base<T>::~Base()
{

}


//derived.h
namespace Ui
{
    class Derived;
}

class Derived: public QWidget, public Base<MyType>
{
    Q_OBJECT

public:
    explicit Derived(QWidget *parent = 0);
    ~Derived();

private:
    Ui::Derived*ui;
};

//derived.cpp
Derived::Dervied(QWidget* parent) : QWidget(parent), Base<Mytype>(parent)
{
    list = new QList<MyType*>();
}
Run Code Online (Sandbox Code Playgroud)

所以我想要从基类实现这个Qlist,但是使用像MyType这样的特定类型参数.我之前在c ++中没有使用模板与继承相结合,我尝试了几件事,但是他们没有成功.

编辑 所以,我尝试下面解释dtbeaver,但后来我得到以下错误信息:未定义引用'Base :: Base()'.我得到了构造函数和解构函数

c++ inheritance templates

0
推荐指数
1
解决办法
5422
查看次数

标签 统计

c++ ×1

inheritance ×1

odroid ×1

qmake ×1

qt ×1

templates ×1

ubuntu ×1