Fix bug: getter methods for vectors should return a reference.
diff --git a/ndn-cpp/data.hpp b/ndn-cpp/data.hpp
index d7b9dbe..f368152 100644
--- a/ndn-cpp/data.hpp
+++ b/ndn-cpp/data.hpp
@@ -102,8 +102,8 @@
   
   int getFreshnessSeconds() const { return freshnessSeconds_; }
   
-  const std::vector<unsigned char> getFinalBlockID() const { return finalBlockID_; }
-  std::vector<unsigned char> getFinalBlockID() { return finalBlockID_; }
+  const std::vector<unsigned char> &getFinalBlockID() const { return finalBlockID_; }
+  std::vector<unsigned char> &getFinalBlockID() { return finalBlockID_; }
   
   const KeyLocator &getKeyLocator() const { return keyLocator_; }
   KeyLocator &getKeyLocator() { return keyLocator_; }
@@ -191,7 +191,8 @@
   const SignedInfo &getSignedInfo() const { return signedInfo_; }
   SignedInfo &getSignedInfo() { return signedInfo_; }
   
-  const std::vector<unsigned char> getContent() const { return content_; }
+  const std::vector<unsigned char> &getContent() const { return content_; }
+  std::vector<unsigned char> &getContent() { return content_; }
 
   void setSignature(const Signature &signature) { signature_ = signature; }
   
diff --git a/ndn-cpp/interest.hpp b/ndn-cpp/interest.hpp
index 5d7169a..149c606 100644
--- a/ndn-cpp/interest.hpp
+++ b/ndn-cpp/interest.hpp
@@ -191,7 +191,7 @@
 
   double getInterestLifetimeMilliseconds() const { return interestLifetimeMilliseconds_; }
 
-  const std::vector<unsigned char> getNonce() const { return nonce_; }
+  const std::vector<unsigned char> &getNonce() const { return nonce_; }
   
   /**
    * Clear this interest, and set the values by copying from the interest struct.