Форум программистов, компьютерный форум CyberForum.ru

Компилятор MinGW в NetBeans не видит класс потока (thread) - C++

Восстановить пароль Регистрация
 
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
02.09.2015, 08:45     Компилятор MinGW в NetBeans не видит класс потока (thread) #1
Версия NetBeans - 8.0.2
компилятор - MinGW

Суть проблемы в следующем - использую NetBeans для С++, компилятор MinGW. Начал изучать работу с потоками (код простой программы приведен ниже). Но столкнулся с проблемой - компилятор в пространстве имен std класс потока не видит. Искал решение в нэте, так и не нашел. Может кто сталкивался с такой проблемой и подскажет как её решить? Заранее спасибо всем откликнувшимся!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//----- begin_code -----
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <vector>
#include <math.h>
#include <algorithm>
#include <ctime>
#include <thread>
 
using namespace std;
 
void thrF(){}
 
int main(int argc, char** argv) {
        
    std::thread thr(thrF());
    thr.join();    
        
    return 0;
}
//----- end_code -----
текст ошибки после компиляции
main.cpp:27:5: error: 'thread' is not a member of 'std'
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2015, 08:45     Компилятор MinGW в NetBeans не видит класс потока (thread)
Посмотрите здесь:

C++ Где можно скачать компилятор MinGW?
NetBeans IDE и компилятор MinWG(gcc) C++
C++ MinGW + Netbeans
C++ NetBeans, MinGW и setlocale
компилятор mingw C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,195
Завершенные тесты: 1
02.09.2015, 09:04     Компилятор MinGW в NetBeans не видит класс потока (thread) #2
В VS2013 компилируется такое
C++
1
2
3
4
5
6
7
8
9
10
#include <thread>
 
void thrF(){}
 
int main() 
{
    std::thread thr(thrF);
    thr.join();
    return 0;
}
DrOffset
6457 / 3831 / 885
Регистрация: 30.01.2014
Сообщений: 6,627
02.09.2015, 10:15     Компилятор MinGW в NetBeans не видит класс потока (thread) #3
alex_kos_82,
Вот это
-std=c++11
в параметрах компилятору есть?
Если да, то обнови версию MinGW, возможно она просто старая.
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
02.09.2015, 13:03  [ТС]     Компилятор MinGW в NetBeans не видит класс потока (thread) #4
настройки заданы - -std=c++11
Компилятор MinGW в NetBeans не видит класс потока (thread)

Как версию компилятора узнать не подскажите? Установлена самая последняя.
Миниатюры
Компилятор MinGW в NetBeans не видит класс потока (thread)  
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,195
Завершенные тесты: 1
02.09.2015, 13:10     Компилятор MinGW в NetBeans не видит класс потока (thread) #5
Цитата Сообщение от alex_kos_82 Посмотреть сообщение
std::thread thr(thrF());
Я не понимаю такого синтаксиса. До сих пор считал, что thrF() означает вызов функции, а thr(thrF()) означает вызов конструктора, которому передается результат вызова (в данном случае void, что весьма странно выглядит).
Цитата Сообщение от zss Посмотреть сообщение
std::thread thr(thrF);
Здесь понятно, что в качестве параметра конструктора передается адрес функции.
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
02.09.2015, 13:32  [ТС]     Компилятор MinGW в NetBeans не видит класс потока (thread) #6
zss спасибо, но вопрос не в этом - как компилятор настроить на работу? Как сделать так чтобы мы увидели класс потока?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11841 / 6820 / 771
Регистрация: 27.09.2012
Сообщений: 16,911
Записей в блоге: 2
Завершенные тесты: 1
02.09.2015, 13:39     Компилятор MinGW в NetBeans не видит класс потока (thread) #7
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Версия компилятора? TDM порт вроде как не поддерживает
Смотрели?
http://stackoverflow.com/questions/2...thread-support
http://stackoverflow.com/questions/1...e-kepler-mingw
http://stackoverflow.com/questions/2...-member-of-std
DrOffset
6457 / 3831 / 885
Регистрация: 30.01.2014
Сообщений: 6,627
02.09.2015, 17:25     Компилятор MinGW в NetBeans не видит класс потока (thread) #8
Цитата Сообщение от alex_kos_82 Посмотреть сообщение
Как версию компилятора узнать не подскажите?
Зайти в каталог bin в mingw, открыть консольку и выполнить
g++ -v
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
03.09.2015, 09:31  [ТС]     Компилятор MinGW в NetBeans не видит класс потока (thread) #9
Спасибо всем откликнувшимся!!!
версия компилятора 5.1.0
Спасибо Croessmah )) Получается что в той сборке которую я использовал (стандартная сборка) нет класса потока.
Надо использовать сборки, приведенные по ссылке ниже
x32 - http://sourceforge.net/projects/ming...ds-posix/sjlj/
x64 - http://sourceforge.net/projects/ming...ds-posix/sjlj/
Однако папки msys там нет, её можно копировать из стандартного компилятора MinGW
castaway
Эксперт С++
4848 / 2987 / 368
Регистрация: 10.11.2010
Сообщений: 11,028
Записей в блоге: 10
Завершенные тесты: 1
03.09.2015, 11:07     Компилятор MinGW в NetBeans не видит класс потока (thread) #10
Какие то старые сборки ты нашел.
i686-4.9.3-release-posix-dwarf-rt_v4-rev1.7z
x86_64-4.9.3-release-posix-seh-rt_v4-rev1.7z
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
03.09.2015, 13:00  [ТС]     Компилятор MinGW в NetBeans не видит класс потока (thread) #11
Понял, попробуем!
Вопрос еще один по этой теме - для компилятора VisualStudio 2010 есть возможность добавить данный класс?? Суть в том что итоговое приложение будет собираться на компиляторе Visual Studio 2010 на Qt.
Почему так замысловато? Раньше необходимости работать с потоками не было и все написанное в NetBeans + MinGW прекрасно собиралось. Но возникла необходимость работать с потоками. Книг по работе с классом thread достаточно, то есть по сути это распространенный класс. И по идее с этим классом в компиляторе VisualStudio как то должны работать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.09.2015, 09:58     Компилятор MinGW в NetBeans не видит класс потока (thread)
Еще ссылки по теме:

Ошибка при создании потока std::thread C++
Можно ли просто установить yaml в компилятор MinGW? C++
Std::thread приостановка потока C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
alex_kos_82
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 39
11.09.2015, 09:58  [ТС]     Компилятор MinGW в NetBeans не видит класс потока (thread) #12
Понял, вопрос закрыт ))
Yandex
Объявления
11.09.2015, 09:58     Компилятор MinGW в NetBeans не видит класс потока (thread)
Ответ Создать тему
Опции темы

Текущее время: 02:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru