繁体   English   中英

创建对象时出现“未定义的结构”错误

[英]“Undefined struct” error when creating an object

我正在研究一个链接到C库的C ++项目。 我的C ++类如下:

extern "C" {
    struct __struct1__;
    struct __struct2__;
    struct __struct3__;
    struct __struct4__;
}

namespace mynamespace {
   class MyClass : public Parent {
     public:
          ....

     private:
          ....

          __struct1__* s1;
          __struct2__* s2;
          struct __struct3__ s3;
          struct __struct4__ s4;
   };
}

在创建像s1和s2这样的指针时,一切正常。 但是对象效果不好。 生成以下错误:

使用未定义的结构时出错

如何创建s3和s4等对象?

变量:

__struct1__ *s1

只是类型指针(对你的结构,但仍然只是一个指针),所以编译器确切地知道这个变量需要多少内存。 但在以下情况下:

__struct3__ s3

这个变量的类型是__struct3__,所以没有整个定义编译器不知道它的大小。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM