如何在 C++v11 中使用 Aspectc++?

How to use Aspectc++ with C++v11?

我想为 C++11 项目使用 aspectc++ 编译器。我在手册中读到,版本 2 将支持 c++11。我认为方面编织只发生在代码级别,那么为什么它取决于所使用的 C++ 版本?当 aspectc++ 只需编织方面以生成一段组合代码时,为什么 aspectc++ 会关心源代码?有没有办法将 aspectc++ 用于 C++11 源代码?或者是否有可以处理它的替代方案?

这个post已经有点老了,我知道。 尽管如此,我还是想回答为什么 aspectC++ 依赖于 C++ 版本的问题:

aspectC++ 在内部解析代码(除其他事项外,还可以识别编织代码的位置)。并非所有这些都可以由外部解析器完成,因此它需要基本上自己理解语法。 AspectC++ 编译器版本 < 2.0 无法处理来自 C++11 的一些新的 C++ 构造,例如属性 ([[...]])。

要使用 c++11 进行编译只需使用 -std=c++11