2
struct empDetails {
int empId;
string name;
};

v8::Handle<v8::Value> GetEMPDetails(const v8::Arguments &args)
{  
    std::vector<empDetails>  e1;
    e1.push_back(empDetails(23, "paul"));
    e1.push_back(empDetails(45, "john")); 

    // how can I return V8 handle so that I can use this vector in 
    // my javascript module
    return e1; 
}

在这里我想将 e1 返回到 javascript 模块,有人可以告诉我该怎么做吗?

4

1 回答 1

2

使用v8::Array,例如:

v8::Handle<v8::Array> result = v8::Array::New(e1.size());
for (size_t i = 0; i < e1.size(); i++)
  result->Set(i, someObject);

显然,您仍然需要将您的empDetails实例转换v8::Object为向量中的每个条目。

于 2012-12-31T19:43:49.213 回答