【发布时间】:2013-09-27 14:57:48
【问题描述】:
我们正在尝试使用 http://cpp-netlib.org 并未能编译它,因为在它的一个标头中它有:
namespace network {
namespace utils {
struct thread_pool;
}
}
在另一个方面:
namespace network {
namespace utils {
typedef ::network::concurrency::thread_pool thread_pool;
}
}
根据我对 C++ 中 Forward declaration of a typedef in C++ 和 http://www.cplusplus.com/forum/beginner/75561 的理解,这基本上是非法的 - 你不能转发声明:“struct A;”然后尝试“typedef X A;”。
所以,我的问题是,他们究竟会用什么来编译它?这是 C++11 的一些新特性吗,因为他们声称使用的是最新最好的 C++11?
【问题讨论】:
-
你说得对,这看起来坏了。
-
这对他们来说可能是一个更好的说法:cpp-netlib.org/#support
-
即使在 pre-c++11 中也被破坏了
-
@stefaanv 好吧,因为这段代码实际上是来自
cpp-netlibGitHub 页面的主干版本,我想它可能只是在进行中
标签: c++ c++11 typedef forward-declaration