<class> STD 中的矢量对象不会在头文件之外显示完成

Vector<class> object from the STD won't show completion outside header file

本文关键字:文件 显示 对象 gt class lt STD      更新时间:2023-10-16

编辑:解决方案:在.cpp文件中重新声明"using命名空间std;" !

我使用Code::Blocks,我不能得到一个矢量对象来告诉我它在我声明它的头之外的可用函数!

我无法得到显示我可以在对象上执行的所有功能的方框。

在我的。h:

    vector<DrawObject> objects;

在我的。cpp (.h文件)中,这样做不会显示任何内容:

    objects.

如果我做对象。在。cpp上,它会像它应该的那样显示一切。它将工作,只是一个小麻烦,但它将是方便的。

这是故意的,我怀疑你无能为力。

c++的代码补全很难,因为IDE本质上需要编译整个(可能不完整和错误的)代码。c++无论如何都很难解析,更不用提对不完整代码的持续后台编译了。

因此,大多数ide(包括Code::Blocks)实际上并没有实现完整的解析器,只是一个非常基本的子集,并且代码完成非常原始。

这在将来可能会改变,因为现在有一个强大且相当有效的解决方案,称为libclang。但是,在Code::Blocks被修补为内部使用之前,此行为将持续存在。