根据this page,使用没有Boost的Asio应该相当简单,但我仍然无法编译任何类似include
的文件:
#include <asio>
#include <asio.hpp>
#include <asio/version.hpp>
我已经将我的编译器设置为使用c ++ 11(它已经在做了,虽然我确实从gnu++11
切换到c++11
),并且我放置了#define ASIO_STANDALONE
之前各种包括我正在尝试。
除此之外,是否还需要一些额外的工作来访问c ++ 11 Asio标头?在上述任何尝试的编译过程中,我只会遇到file not found
错误。
答案 0 :(得分:6)
如果满足以下条件,则可以在没有Boost的情况下使用Asio:
-std=c++11
标志。对于Xcode,在项目设置中将C ++语言方言设置为C ++ 11或更高版本-I/path/to/asio
或将Asio标头放在/ use / local / include中。 Xcode还将读取/ usr / local / include,或者您可以在项目配置的标题搜索路径部分中指定自定义标题路径。#define ASIO_STANDALONE
。这个定义告诉Asio使用C ++ 11标准库功能来处理错误代码,共享指针等,而不是使用Boost的polyfills。