如何使用g ++构造在另一个文件中定义的类?

米哈(Miha)姓

关于使用#includeed文件中定义的类,我有一个简单的问题我有三个文件,class.cc,class.h和user.cc。我正在尝试使用在user.cc文件中的class.cc中定义的类,但是遇到了一个我想理解的错误(不仅仅是解决)。

这些是文件:

class.cc

class myclass {
  public:
    myclass() : nb(1) {};
    int nb;
    int myfunc();
};

int myclass::myfunc() {
  return 42;
}

class myclass {
  public:
    myclass();
    int nb;
    int myfunc();
};

user.cc

#include <iostream>
#include "class.h"

int main() {
  myclass example;
  std::cout << example.myfunc() << "class works too.";
}

我要做的是为main.cc(main.o)和class.cc(class.o)和一个静态库class.a创建一个目标文件。然后,当我尝试将所有链接与:

g++ -o user user.o class.a

我收到以下错误:

user.o:user.cc:(.text+0x15): undefined reference to `myclass::myclass()'
user.o:user.cc:(.text+0x15): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `myclass::myclass()'
collect2: error: ld returned 1 exit status

我了解用户以某种方式无法看到myclass构造函数的定义位置,但我不明白为什么不...

约翰·兹温克

您的class.h不应在class.cc中重复。相反,class.cc应该#include "class.h"在顶部。然后,您只需要认识到您将丢失构造函数定义,因此可以像以前在class.cc中那样在class.h中使其内联,或者在class.cc中以常规方式对其进行定义。

切勿使用C或C ++将一个文件复制粘贴到另一个文件中。这正是#include的目的!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在另一个文件的类之外定义类构造函数?

来自分类Dev

如何从python中的另一个文件访问构造函数中定义的变量

来自分类Dev

如何在g ++中使用另一个文件中定义的功能?

来自分类Dev

如何在g ++中使用另一个文件中定义的函数?

来自分类Dev

如何从另一个Scala文件扩展在一个Scala文件中定义的类

来自分类Dev

如何定义另一个模板类的内部模板类的构造函数?

来自分类Dev

如何使用一个类的构造函数作为Java中另一个类的对象的参数?

来自分类Dev

如何使用actionListener打开另一个类中的Jframe作为构造函数?

来自分类Dev

如何使用另一个JavaScript文件中定义的类名调用回调函数

来自分类Dev

如何使PHP类在其构造函数中实例化另一个类?

来自分类Dev

如何在一个类中定义/声明一个变量,以便可以在PHP的另一个文件中访问它?

来自分类Dev

java:使用另一个类的构造函数

来自分类Dev

如何使一个继承自python中另一个类的类的构造函数?

来自分类Dev

如何从没有构造函数的另一个类中调用方法

来自分类Dev

如何从另一个.java文件中的另一个类调用方法?

来自分类Dev

在另一个类的构造函数中使用一个类作为参数

来自分类Dev

使用另一个类C ++构造一个类

来自分类Dev

使用构造函数将一个类传递给另一个类

来自分类Dev

jvm classloader如何加载另一个类中定义的类?

来自分类Dev

如何从另一个类中定义的类创建数组

来自分类Dev

在C ++中,如何使用在另一个文件中定义的常量变量?

来自分类Dev

如何使用样式中另一个xaml文件中定义的样式

来自分类Dev

如何通过另一个文件中另一个文件定义的变量来使用该文件中包含eval的函数?

来自分类Dev

如何使用另一个类中的变量

来自分类Dev

如何使用另一个类中的变量

来自分类Dev

如何使用另一个类文件中的变量

来自分类Dev

如何在python中为另一个类定义一个包含类?

来自分类Dev

如何使用TS Compiler API查找变量在另一个文件中的定义位置

来自分类Dev

可以在类的构造函数内部使用“ new”来调用Java中的另一个构造函数吗?

Related 相关文章

  1. 1

    如何在另一个文件的类之外定义类构造函数?

  2. 2

    如何从python中的另一个文件访问构造函数中定义的变量

  3. 3

    如何在g ++中使用另一个文件中定义的功能?

  4. 4

    如何在g ++中使用另一个文件中定义的函数?

  5. 5

    如何从另一个Scala文件扩展在一个Scala文件中定义的类

  6. 6

    如何定义另一个模板类的内部模板类的构造函数?

  7. 7

    如何使用一个类的构造函数作为Java中另一个类的对象的参数?

  8. 8

    如何使用actionListener打开另一个类中的Jframe作为构造函数?

  9. 9

    如何使用另一个JavaScript文件中定义的类名调用回调函数

  10. 10

    如何使PHP类在其构造函数中实例化另一个类?

  11. 11

    如何在一个类中定义/声明一个变量,以便可以在PHP的另一个文件中访问它?

  12. 12

    java:使用另一个类的构造函数

  13. 13

    如何使一个继承自python中另一个类的类的构造函数?

  14. 14

    如何从没有构造函数的另一个类中调用方法

  15. 15

    如何从另一个.java文件中的另一个类调用方法?

  16. 16

    在另一个类的构造函数中使用一个类作为参数

  17. 17

    使用另一个类C ++构造一个类

  18. 18

    使用构造函数将一个类传递给另一个类

  19. 19

    jvm classloader如何加载另一个类中定义的类?

  20. 20

    如何从另一个类中定义的类创建数组

  21. 21

    在C ++中,如何使用在另一个文件中定义的常量变量?

  22. 22

    如何使用样式中另一个xaml文件中定义的样式

  23. 23

    如何通过另一个文件中另一个文件定义的变量来使用该文件中包含eval的函数?

  24. 24

    如何使用另一个类中的变量

  25. 25

    如何使用另一个类中的变量

  26. 26

    如何使用另一个类文件中的变量

  27. 27

    如何在python中为另一个类定义一个包含类?

  28. 28

    如何使用TS Compiler API查找变量在另一个文件中的定义位置

  29. 29

    可以在类的构造函数内部使用“ new”来调用Java中的另一个构造函数吗?

热门标签

归档