小编Ran*_*Guy的帖子

std::transform 将一个结构数组复制到另一个

我有以下结构。

typedef struct
{
    uint32_t   aa;        
    float32_t  bb;  
    float32_t  cc;  
    float32_t  dd;    
    float32_t  ee;    
}struct_1;

typedef struct
{
    uint32_t   hh;        
    float32_t  bb;  
    float32_t  cc;  
    float32_t  ii;    
    float32_t  jj;    
}struct_2;
Run Code Online (Sandbox Code Playgroud)

我创建了结构数组,其中 struct_1 是动态分配的,而 struct_2 是静态的。

struct_1 *array1 = new struct_1[300];
struct_2 array2[300];
Run Code Online (Sandbox Code Playgroud)

如何有效地将内容从array2复制到array1?我不想在这里进行 memcpy,因为如果将来更改任何结构的类型,那么它将导致问题。

在这种情况下,我可以使用 std::transform 或 std::copy 吗?请帮我解决语法问题。

c++ c++11 c++14

3
推荐指数
1
解决办法
160
查看次数

如何从 json 文件读取值数组到 C++ 数组

我有一个包含值和值数组的sample.json。我目前正在使用 Json 库来解析 json 文件并将内容读取到 C++ 代码中。我知道如何读取值,但不确定如何读取数组

以下是sample.json 文件的内容。

"steering_facts" :
{
    "SteerPolynomial": [0.0, 0.0, -0.0006148, 0.025, 16.24, -0.3823],
    "SteerRatio"     : 0.0
}
Run Code Online (Sandbox Code Playgroud)

在这里我可以借助下面的代码阅读“SteerRatio”。

static Json::Value  jsonValues;
if (jsonValues.isMember("steering_facts")){
    float steerRatio = jsonValues["steering_facts"]["SteerRatio"].asFloat();
}
Run Code Online (Sandbox Code Playgroud)

但不知道如何读取 SteerPolynomial 数组。

c++ json

2
推荐指数
1
解决办法
3976
查看次数

标签 统计

c++ ×2

c++11 ×1

c++14 ×1

json ×1