woeful
دوشنبه 04 بهمن 1389, 01:25 صبح
سلام
من کد زیر رو نوشتم اما ارور میگیرم
#ifndef TRANSACTIONTHREAD_H
#define TRANSACTIONTHREAD_H
#include<QThread>
class QImage;
class QWaitCondition;
class QMutex;
class Transaction;
class TransactionThread : public QThread
{
Q_OBJECT
public:
TransactionThread();
~TransactionThread();
void addTransaction(Transaction *transact);
void setImage(const QImage &image);
QImage image();
signals:
void transactionStarted(const QString &message);
void allTransactionDone();
protected:
void run();
private:
QImage currentImage;
QQueue<Transaction *> transactions;
QWaitCondition transactionAdded;
QMutex mutex;
Transaction *EndTransaction;
};
#endif
ارور :
woeful@woeful:~/Desktop/Qt/Qt Book/image$ make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o main.o main.cpp
In file included from mainwindow.h:5,
from main.cpp:2:
transactionthread.h:25: error: ISO C++ forbids declaration of ‘QQueue’ with no type
transactionthread.h:25: error: expected ‘;’ before ‘<’ token
transactionthread.h:26: error: field ‘transactionAdded’ has incomplete type
transactionthread.h:27: error: field ‘mutex’ has incomplete type
make: *** [main.o] Error 1
woeful@woeful:~/Desktop/Qt/Qt Book/image$
خودم فک میکنم مشکل از سرآیند ها باشه اما نمیدونم مشکل چیه :گریه:
سرچ هم زیاد کردم
این کد مربوط مشه به کتاب c-gui-programming-with-qt-4-2ndedition
بخش 14. Multithreading
قسمت Communicating with the Main Thread
اگه کسی این کتاب رو خونده و برنامه این قسمت رو نوشته و برنامه درست run شده یه زحمت بکشه کد هاشو برای من upload کنه.
3 روزه گیر کردم لطفا کمک کنید . :گریه:
باتشکر
Woeful
من کد زیر رو نوشتم اما ارور میگیرم
#ifndef TRANSACTIONTHREAD_H
#define TRANSACTIONTHREAD_H
#include<QThread>
class QImage;
class QWaitCondition;
class QMutex;
class Transaction;
class TransactionThread : public QThread
{
Q_OBJECT
public:
TransactionThread();
~TransactionThread();
void addTransaction(Transaction *transact);
void setImage(const QImage &image);
QImage image();
signals:
void transactionStarted(const QString &message);
void allTransactionDone();
protected:
void run();
private:
QImage currentImage;
QQueue<Transaction *> transactions;
QWaitCondition transactionAdded;
QMutex mutex;
Transaction *EndTransaction;
};
#endif
ارور :
woeful@woeful:~/Desktop/Qt/Qt Book/image$ make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o main.o main.cpp
In file included from mainwindow.h:5,
from main.cpp:2:
transactionthread.h:25: error: ISO C++ forbids declaration of ‘QQueue’ with no type
transactionthread.h:25: error: expected ‘;’ before ‘<’ token
transactionthread.h:26: error: field ‘transactionAdded’ has incomplete type
transactionthread.h:27: error: field ‘mutex’ has incomplete type
make: *** [main.o] Error 1
woeful@woeful:~/Desktop/Qt/Qt Book/image$
خودم فک میکنم مشکل از سرآیند ها باشه اما نمیدونم مشکل چیه :گریه:
سرچ هم زیاد کردم
این کد مربوط مشه به کتاب c-gui-programming-with-qt-4-2ndedition
بخش 14. Multithreading
قسمت Communicating with the Main Thread
اگه کسی این کتاب رو خونده و برنامه این قسمت رو نوشته و برنامه درست run شده یه زحمت بکشه کد هاشو برای من upload کنه.
3 روزه گیر کردم لطفا کمک کنید . :گریه:
باتشکر
Woeful