我只是想问这个非常琐碎的问题,我不知道这是否是正确的问题,或者以前是否有人问过这个问题,我知道这可以通过访问关于 boost 的文档来解决。但我真的迷路了,被困boost.thread
在C::B
.
我只是一个初学者,目前正在学习如何制作 Windows 应用程序,并不认真,只是为了学习目的。我只是注意到我真的需要多线程的概念才能让它工作。所以我决定使用 Boost 库,我完全按照 boost wiki 在构建库时所说的那样做,我认为我没有做错什么。
我从文档中运行了一些代码,这些代码仅是标题,并且可以完美运行,但是 boosts 中包含的库需要某种特殊处理,包括boost.thread
我遇到的困难。我知道#includ-ing 在我的文件中不会Boost.thread
起作用。我从在线教程中找到的这个基本代码(我在那里找到的多线程页面上的第一个代码)中得到了错误,产生了一个错误,表明没有这样的文件目录。
||=== Multithreading_sample, Debug ===|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|1|boost/thread.hpp: No such
file or directory|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp||In function `void
wait(int)':|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|6|error: `boost' has not
been declared|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|6|error: `boost' has not
been declared|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|6|error: `seconds' cannot
be used as a function|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|6|error: `sleep' undeclared
(first use this function)|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|6|error: (Each undeclared
identifier is reported only once for each function it appears in.)|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp||In function `int main()':|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|20|error: `boost' has not
been declared|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|20|error: expected `;'
before "t"|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|20|warning: statement is a
reference, not call, to function `thread'|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|20|warning: statement has
no effect|
C:\Documents and Settings\Owner\Desktop\Programming\C++\Dev
C++\App\Multithreading_sample\Multithreading_sample\main.cpp|21|error: `t' undeclared
(first use this function)|
||=== Build finished: 9 errors, 2 warnings ===|
并且我知道它没有检测到我的boost.thread
图书馆,我不知道在这部分去哪里。我已经搜索了谷歌,但我认为我最好的选择是单独构建 1boost.thread1,如下所示,我不知道下一步该做什么。
- 我的 boost 库版本是 1.51.0 我的 C::B 是在 windows XP 上运行的 10.05,我想
boost.thread
在我的 CodeBlocks 中使用。我想做的只是粘贴代码并运行它,看看它是如何工作的。 - 我的 MinGW 版本是 3.4.2