我想创建一个Qt应用程序(使用QT-创造者),使用我的图书馆,这是建立VS2010。库包含一个类,即使用std :: shred_ptr <>Qt应用程序和std :: shared_ptr的
#include <memory>
struct MyStruct;
class MyClass
{
public:
MyClass::MyClass();
protected:
std::shared_ptr<MyStruct> mMember;
}
然后我包括库的应用程序,使用This tutorial。 并得到下一个错误:
ISO C++ forbids declaration of 'shared_ptr' with no type
invalid use of '::'
expected ';' before '<' token
是解决这个问题的方法吗?
* PS *已更正的代码(已添加include和shared_ptr的参数类)。 但这个东西已经在原来的代码。 我认为,在Qt的创始人编译器的问题。但我不完全清楚,因为我在qt编程方面很新颖。
谢谢,我前一段时间找到了这个解决方案。但它仍然不是万能的。它可以抑制'shared_ptr'的问题,但不会识别'nullptr'关键字。所以我决定 - 最好的解决方案是在相同的编译器上构建应用程序,构建库。所以我会尝试绑定vs2010和qt,并使用vs2010构建应用程序。祝我好运))) 。 – kaa 2012-03-11 18:55:24
不识别nullptr关键字?嗯...这很奇怪。 VC2010支持这个关键字(http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx)... – 2012-03-12 14:41:52
VS2010认识...... QtCreator不 – kaa 2012-03-13 09:58:59