diff --git a/ndn-cpp/Name.cpp b/ndn-cpp/Name.cpp
index 995746c..5a62801 100644
--- a/ndn-cpp/Name.cpp
+++ b/ndn-cpp/Name.cpp
@@ -5,6 +5,7 @@
  */
 
 #include <sstream>
+#include "c/Name.h"
 #include "Name.hpp"
 
 using namespace std;
@@ -15,6 +16,13 @@
 {
 }
   
+void Name::set(struct ndn_Name &nameStruct) 
+{
+  clear();
+  for (int i = 0; i < nameStruct.nComponents; ++i)
+    addComponent(nameStruct.components[i].value, nameStruct.components[i].valueLength);  
+}
+
 std::string Name::to_uri()
 {
   // TODO: implement fully.
diff --git a/ndn-cpp/Name.hpp b/ndn-cpp/Name.hpp
index 2d2744a..eacd420 100644
--- a/ndn-cpp/Name.hpp
+++ b/ndn-cpp/Name.hpp
@@ -11,6 +11,8 @@
 #include "common.h"
 #include "encoding/BinaryXMLWireFormat.hpp"
 
+extern "C" { struct ndn_Name; }
+
 namespace ndn {
   
 class Name {
@@ -32,6 +34,12 @@
   }
   
   /**
+   * Clear the name, and set the components by copying from the name struct.
+   * @param name a C ndn_Name struct
+   */
+  void set(struct ndn_Name &nameStruct);
+  
+  /**
    * Add a new component, copying from value of length valueLength.
    */
   void addComponent(unsigned char *value, unsigned int valueLength) {
