表达式必须具有 class 类型,但它具有类型“*shape”
Expression must have class type but it has type "*shape"
我正在尝试创建一个矢量,如下所示:
std::vector<double> dimensions_data_vec{input_shape_pointer.get_dimensions()};
在此代码中,input_shape_pointer
是一个指向矩形等形状的指针。形状具有与之关联的尺寸,例如。长度和宽度。我现在必须创建另一个单独的 class,它接受一个指向形状的指针并访问它的维度。为此,我使用代码片段。
get_dimensions()
函数是形状 class 的一部分,returns 是向量中形状的维数,其类型为 double
.
我的代码出现错误
Expression must have class type but it has type "*shape" (please note the asterisk here)
我的问题是,如何让 get_dimensions()
在矢量初始化之前对形状进行处理,以便不存在不匹配,并且 dimensions_data_vec
只接受双倍形状尺寸的矢量?我认为用另一个向量初始化一个向量可能会有问题,但我想一次解决一个问题。
如果 input_shape_pointer
是指向 shape
的 指针 ,则使用 ->
而不是 .
。例如,表达式
input_shape_pointer.get_dimensions()
应替换为:
input_shape_pointer->get_dimensions()
注意在上面的表达式
中使用->
而不是.
我正在尝试创建一个矢量,如下所示:
std::vector<double> dimensions_data_vec{input_shape_pointer.get_dimensions()};
在此代码中,input_shape_pointer
是一个指向矩形等形状的指针。形状具有与之关联的尺寸,例如。长度和宽度。我现在必须创建另一个单独的 class,它接受一个指向形状的指针并访问它的维度。为此,我使用代码片段。
get_dimensions()
函数是形状 class 的一部分,returns 是向量中形状的维数,其类型为 double
.
我的代码出现错误
Expression must have class type but it has type "*shape" (please note the asterisk here)
我的问题是,如何让 get_dimensions()
在矢量初始化之前对形状进行处理,以便不存在不匹配,并且 dimensions_data_vec
只接受双倍形状尺寸的矢量?我认为用另一个向量初始化一个向量可能会有问题,但我想一次解决一个问题。
如果 input_shape_pointer
是指向 shape
的 指针 ,则使用 ->
而不是 .
。例如,表达式
input_shape_pointer.get_dimensions()
应替换为:
input_shape_pointer->get_dimensions()
注意在上面的表达式
中使用->
而不是.