我是C ++的初学者。我有这个名为SharedData.h的头文件。它在下面给出。
//SharedData.h
#include <memory>
typedef struct Shared_data
{
std::string _data;
bool IsConsumedbyNodeA;
bool IsConsumedbyNodeB;
public:
Shared_data():
tokenizer_data(""),IsConsumedbyNodeA(false),IsConsumedbyNodeB(false){};
Shared_data& ReadSharedData();
void WriteSharedData(Shared_data &);
}Shared_data;
extern std::shared_ptr<Shared_data> ptr_to_Shared_data;//I am getting the above mentioned error here
shared_ptr正在Shared_data.cpp中定义,因此无论我在哪里包含标题,我都会在内存和外部声明中获得该对象的单个副本。
我尝试了很多,但不知道如何解决此错误。
请帮助.....
此致 TechTotie
答案 0 :(得分:0)
您需要添加标题memory
。
答案 1 :(得分:0)
对于使用std::shared_ptr
,您应该启用对C ++ 11标准的支持并包含标题memory
。