开发者

Intellisense shows boost::boost::boost::boost::boost::boost::classname....... why?

I have some C++ code, and for some reason, for a couple of class开发者_Go百科es, they show up as boost::boost::boost::boost::boost::classname in the Visual Studio browser.

The classes themselves are not in the boost namespace.

There's no problem compiling the code. I've output the preprocessed version of the .cpp file, and I can't see anything funky. I've tried deleting and rebuilding the Intellisense database, no go.

I've tried putting a ';' on a line by itself after the #include , even though I know namespaces don't require that. No go.

Anyone else ever seen this, or know how to fix it?


I installed boost 1.40 instead of 1.39, and the problem went away.


I suspect you are seeing the ruminants of the mangled name given to the template variable by the compiler.

The C++ compiler mangles the variable name to include information about the template arguments so these names can become quite complex.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜