0
こんにちは私は他のすべての質問を読みましたが、私の心の中でクリアされていませんでした。申し訳ありませんが重複した質問がありますが、これを解決するオプションはありません。QT5 Initializerで実装されていません
G ++/GCCを搭載したUbuntuマシンでQT 5を使用しています。 だから、私はコンパイルしていると私はこのエラーを取得:
src/rolebit.cpp:279:26: error: variable 'startWindowImpl mainWin' has initializer but incomplete type
startWindowImpl mainWin(myConfig,myLog);
ので、rolebit.cppファイルから私はこの実装があります
#ifdef QML_CLIENT
//START THE QML SWITCH HERE
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <QApplication>
#include <boost/shared_ptr.hpp>
#include "configfile.h"
#include "qmlwrapper.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
boost::shared_ptr<ConfigFile> myConfig;
myConfig.reset(new ConfigFile(argv[0], false));
QmlWrapper myQml(myConfig);
return app.exec();
}
をしかし、この後、私はこのラインがあります。
を#else
// START OF OLD QT-WIDGETS GUI SECTION
#include <boost/asio.hpp>
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <qapplication.h>
#if QT_VERSION >= 0x050000
#include <QtWidgets>
#endif
#include <QtGui>
#include <QtCore>
#ifdef __APPLE__
#if QT_VERSION < 0x050000
#include <QMacStyle>
#endif
#endif
#include <curl/curl.h>
#include "session.h"
#include "startwindowimpl.h"
#include "configfile.h"
#include "log.h"
#include "startsplash.h"
#include "game_defs.h"
#include <net/socket_startup.h>
#include <third_party/qtsingleapplication/qtsingleapplication.h>
#ifdef _MSC_VER
#ifdef _DEBUG
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>
#define ENABLE_LEAK_CHECK() \
{ \
int tmpFlag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); \
tmpFlag |= _CRTDBG_LEAK_CHECK_DF; \
_CrtSetDbgFlag(tmpFlag); \
}
#endif
#endif
#ifndef ENABLE_LEAK_CHECK
#define ENABLE_LEAK_CHECK()
#endif
問題が発生している行は次のとおりです。
startWindowImpl mainWin(myConfig,myLog);
私は仕事をするために何をする必要がありますか?
は事前
こんにちはmvidelgauz、あなたの返信ありがとう! 私はコードを見て、私は2番目の行(QT5のために)私はまだstartwindowimpl.hがあることがわかります。しかし、インクルードの最初の行にインクルードしても、同じエラーが発生します。 EDIT ありがとう、私はあなたのヒントに基づいて問題を見つける。私の "startwindowimpl.h"は0kbのファイルで、ファイルを調べて0行です。私はコードをバックアップし、今働いています。 –
ありがとうございました。投稿されたコードがあなたの問題を推測するには不十分です。 .hファイルの内容を追加してください。 – mvidelgauz
はあなたのヒントに基づいて解決されました。ありがとうございました! –