我有一个小班不能正常工作,我不知道它有什么问题.编译器给出了以下消息:
main.cpp: error: undefined reference to 'CDetails::CDetails()'
Run Code Online (Sandbox Code Playgroud)
这是代码中的快照:
//main.cpp
#include <QtGui/QGuiApplication>
#include "qtquick2applicationviewer.h"
#include <QQmlContext>
#include <QDebug>
class CDetails : public QObject
{ Q_OBJECT
public:
CDetails() {}
~CDetails(void) {}
public slots:
void cppSlot(const QString &msg)
{ qDebug() << "Called the C++ slot with message:" << msg;
}
};
int main(int argc, char *argv[])
{ QGuiApplication app(argc, argv);
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/testqml/main.qml"));
viewer.showExpanded();
CDetails *test = new CDetails();
QObject::connect((QObject*)viewer.rootObject(),
SIGNAL(qmlSignal(QString)),test,
SLOT(cppSlot(QString)));
return app.exec();
}
Run Code Online (Sandbox Code Playgroud)
在main.qml中:
import QtQuick 2.0
Rectangle {
id: guide …Run Code Online (Sandbox Code Playgroud) 我正在开发Android应用程序.开发是在Linux上完成的,使用Qt Creator和C++和QML.
当我在一整天中拔掉我的头发并且那件事似乎不太明显时,我想知道是否有人对调试器刷新的错误有任何线索:
Could not load shared library symbols for 85 libraries, e.g. /system/bin/linker.
W/Qt (24399): kernel/qcoreapplication.cpp:418
(QCoreApplicationPrivate::QCoreApplicationPrivate(int&, char**, uint)): WARNING: QApplication was
not created in the main() thread.
D/libEGL (24399): loaded /system/lib/egl/libEGL_tegra.so
D/libEGL (24399): loaded /system/lib/egl/libGLESv1_CM_tegra.so
D/libEGL (24399): loaded /system/lib/egl/libGLESv2_tegra.so
D/OpenGLRenderer(24399): Enabling debug mode 0
I/Choreographer(24399): Skipped 35 frames! The application may be doing
too much work on its main thread.
D/Qt (24399): qtcpserverconnection.cpp:173 (void QTcpServerConnection::listen()): QML Debugger:
Waiting for connection on port 48309...
D/dalvikvm(24399): GC_CONCURRENT freed 396K, 6% …Run Code Online (Sandbox Code Playgroud)