Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法解析结构类型C++;日蚀 我们在C++中使用Eclipse在Ubuntu 1204LTS和ROS环境中进行了一个项目。 我曾经在源文件中定义类,并跳过原型;但是现在我们被告知使用头文件作为原型,源文件作为函数的扩展,其原型包含在头文件中。它的目的是实现一个易于阅读的代码_C++_Eclipse_Struct_Return_Eclipse Cdt - Fatal编程技术网

无法解析结构类型C++;日蚀 我们在C++中使用Eclipse在Ubuntu 1204LTS和ROS环境中进行了一个项目。 我曾经在源文件中定义类,并跳过原型;但是现在我们被告知使用头文件作为原型,源文件作为函数的扩展,其原型包含在头文件中。它的目的是实现一个易于阅读的代码

无法解析结构类型C++;日蚀 我们在C++中使用Eclipse在Ubuntu 1204LTS和ROS环境中进行了一个项目。 我曾经在源文件中定义类,并跳过原型;但是现在我们被告知使用头文件作为原型,源文件作为函数的扩展,其原型包含在头文件中。它的目的是实现一个易于阅读的代码,c++,eclipse,struct,return,eclipse-cdt,C++,Eclipse,Struct,Return,Eclipse Cdt,然而,我在返回结构类型方面有问题,而我以前的工作方式没有问题。让我把自己弄清楚,我想实现什么 这是头文件 class Im_Robot { public: Im_Robot(); private: typedef struct { double d_kp1; double d_ki1; double d_kd1; double d_kp

然而,我在返回结构类型方面有问题,而我以前的工作方式没有问题。让我把自己弄清楚,我想实现什么

这是头文件

class Im_Robot
{
    public:
        Im_Robot();

    private:
        typedef struct
        {
            double d_kp1;
            double d_ki1;
            double d_kd1;
            double d_kp2;
            double d_ki2;
            double d_kd2;
        } ANGULAR_PARAMS;
            ANGULAR_PARAMS angular_params;

    protected:
        void SetAngularParams(double d_kp1, double d_ki1,double d_kd1, double d_kp2,double d_ki2,double d_kd2);
        ANGULAR_PARAMS GetAngularParams();
        ......
这是源文件

void Im_Robot::SetAngularParams(double d_kp1,
                                    double d_ki1,
                                    double d_kd1,
                                    double d_kp2,
                                    double d_ki2,
                                    double d_kd2)
{
    // this, örneği çıkarılan objeyi temsil eden anahtar kelimedir.
    this->angular_params.d_kp1 = d_kp1;
    this->angular_params.d_ki1 = d_ki1;
    this->angular_params.d_kd1 = d_kd1;
    this->angular_params.d_kp2 = d_kp2;
    this->angular_params.d_ki2 = d_ki2;
    this->angular_params.d_kd2 = d_kd2;
}

ANGULAR_PARAMS Im_Robot::GetAngularParams()
{
    return this->angular_params;
}
   ......
在源文件和对应行中

ANGULAR_PARAMS Im_Robot::GetAngularParams()

“无法解析类型参数。”出现错误。尽管我在互联网上搜索过,我还是没有找到任何可靠的解决方案。任何答复都将不胜感激。已经谢谢了。

ANGULAR_PARAMS是一个嵌套类,其作用域是它的封闭类。 必须使用完全限定名称:

Im_Robot::ANGULAR_PARAMS Im_Robot::GetAngularParams()
{
    return this->angular_params;
}
其他:

  • C++中不需要TyBuffs<代码>,只使用<代码> StuttEngalPurialPARAMS> <代码> < /LI>
  • 访问说明符不一致,因为
    ANGULAR\u-PARAMS
    Im\u-Robot
    private
    类,但是
    GetAngularParams()
    保护
    意味着从
    Im\u-Robot
    获取的类可以调用函数,但不能显式使用
    ANGULAR\u-PARAMS
    名称(请参阅)。可以使用
    auto
    访问返回的实例(请参阅和)

ANGULAR_PARAMS
是一个嵌套类,其作用域是其封闭类。 必须使用完全限定名称:

Im_Robot::ANGULAR_PARAMS Im_Robot::GetAngularParams()
{
    return this->angular_params;
}
其他:

  • C++中不需要TyBuffs<代码>,只使用<代码> StuttEngalPurialPARAMS> <代码> < /LI>
  • 访问说明符不一致,因为
    ANGULAR\u-PARAMS
    Im\u-Robot
    private
    类,但是
    GetAngularParams()
    保护
    意味着从
    Im\u-Robot
    获取的类可以调用函数,但不能显式使用
    ANGULAR\u-PARAMS
    名称(请参阅)。可以使用
    auto
    访问返回的实例(请参阅和)

已解决,请回答以便我可以选择您的答案已解决,请回答以便我可以选择您的答案