質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

2回答

651閲覧

#include <QThread>がコンパイルエラーになります。

nqf27650

総合スコア115

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2017/08/01 05:08

コード『QThread.sleep(1)』を実行する為に、
ヘッダーファイルをincludeしていますが、A,B,Cの箇所がエラーになります。
例えば、『qthread.h: そのようなファイルやディレクトリはありません』の
コンパイルエラーが出ます。
(下記添付ファイル参照)
尚、コンパイルは、g++ main.cpp -lpthread で行っています。

Q1) このコンパイルエラーを解消する方法をお教えください。

添付ファイル
#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
#include <errno.h>
// #include <QtCore/QThread> <---A
// #include <QThread> <---B
// #include <qthread.h> <---C

int main(int argc, char *argv[]) {
....
QThread.sleep(1);
....
}

以上、宜しくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

includeは#include <thread>を使用して、
下記の如くコンパイラーオプションを追加し、コンパイル出来ました。

g++ main.cpp -lpthread -std=c++11

混乱の原因は、qtとC++のコンパイルを混同していました。
QThread.sleep(1);--->sleep(1);に変更しなければなりませんね

お騒がせして御免なさい。

以上

投稿2017/08/01 06:24

nqf27650

総合スコア115

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

include-path は通ってますか? compile-option: -I xxx は必要ないんですか?

あと、QThread.sleep(1) ですか? QThread::sleep(1) じゃないんですか?
※ QThread::sleep() は public static らしいのでどっちみち直接は呼び出せない公算大だけど

投稿2017/08/01 05:30

編集2017/08/01 05:39
episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問