Здравствуйте, Дмитрий, Вы писали:
Д>Здравствуйте!
Д>Ребята, посмотрев тут о многопоточности, хотел попробовать, но не вышло.
Д>подскажите пожалуйста:
Д>1. может ли такое быть, чтоб хедера с компилятором шли, но реализации не было (у меня gcc 4.6.1 под mingw32, работаю с Code::Blocks)?
Д>2. как можно посмотреть, какие в точности фичи поддерживает компилятор?
Д>3. а в точности, я пробовал такой код:
Д>Д>#include <future>
Д>static int f(int i)
Д>{
Д> return i;
Д>};
Д>int main()
Д>{
Д> std::async(std::launch::async, f, 0); // error: invalid use of incomplete type 'struct std::future<int>'
Д> return 0;
Д>}
Д>
Д>проблема в том, что функция std::async возвращает объект типа std::future<int>,
Д>но компилятору что-то не нравиться.
Д>подскажите, пожалуйста, в чем проблема?
Д>Заранее спасибо
Ну, вообще-то, сообщение об ошибке говорит само за себя. Очевидно, что компилятор не видет определения этой структуры. То есть она объявлена, но ее определение недоступно компилятору.