diff --git a/ndn-cpp/data.cpp b/ndn-cpp/data.cpp
index 6b2f570..62cdf3b 100644
--- a/ndn-cpp/data.cpp
+++ b/ndn-cpp/data.cpp
@@ -11,6 +11,7 @@
 #include "c/data.h"
 
 using namespace std;
+using namespace ndn::ptr_lib;
 
 namespace ndn {
 
@@ -46,6 +47,32 @@
 {
 }
 
+Data::Data(const Data& data)
+: name_(data.name_), metaInfo_(data.metaInfo_), content_(data.content_), wireEncoding_(data.wireEncoding_)
+{
+  if (data.signature_)
+    signature_ = data.signature_->clone();
+}
+
+Data::~Data()
+{
+}
+
+Data& Data::operator=(const Data& data)
+{
+  if (data.signature_)
+    signature_ = data.signature_->clone();
+  else
+    signature_ = shared_ptr<Signature>();
+  
+  name_ = data.name_;
+  metaInfo_ = data.metaInfo_;
+  content_ = data.content_;
+  wireEncoding_ = data.wireEncoding_;
+
+  return *this;
+}
+
 void 
 Data::get(struct ndn_Data& dataStruct) const 
 {
