将类对象实例作为参数从 main() 传递给另一个类对象实例

弗朗切斯科

我在将类对象实例作为参数从main()函数传递给另一个类对象实例时遇到问题基本上问题出在下面的代码中:

#include <something>
#include "another_thing"

class A
{
    void method1()
    {
        ;
    }

    void method2()
    {
        ;
    }
};

class B
{
    // Define an object of type class A
    A class_object;

    // Constructor
    B(A &passed_object)
    {
        class_object = passed_object;
        //other stuff here
    }

    void method1()
    {
        ;
    }

    void method2()
    {
        ;
    }
};

int main()
{
    A firstObject;
    B secondObject(firstObject);

    // Do something that changes A attributes;

    return 0;
}

问题是在main()执行期间firstObject 的某些属性发生了更改,但在 BI 类中的 passed_object 中看不到这些更改。

编辑基于@HolyBlackCat 提示,以这种方式解决:

修改A class_object;in A &class_object;class_object = passed_object;从构造函数移除并更改构造函数的B(A &passed_object){}inB(A &passed_object) : class_object(passed_object){}

圣黑猫

由于参数 ofB()是一个引用,简单地传递firstObject给它确实不会复制。

但是你没有做A class_object;参考。当您在 中分配给它时B(),您正在制作副本。

您需要使类字段成为参考:A &class_object;

并且由于您必须使用它应该引用的对象初始化引用,因此您不得不使用成员初始化列表

B(A &passed_object) : class_object(passed_object) {}

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

试图将一个对象的实例传递给另一个类

来自分类Dev

将Ruby对象的实例变量作为映射传递给另一个类的初始化程序

来自分类Dev

如果我将一个对象的实例传递给另一个类,它是否仍被视为该对象的相同实例?

来自分类Dev

将类实例的输出作为输入传递给另一个

来自分类Dev

如何将模板化类实例作为模板参数传递给另一个模板?

来自分类Dev

引用从另一个类模块在main中创建的类的实例

来自分类Dev

将类的实例传递给另一个构造函数,该构造函数将其对象添加到所传递的实例拥有的列表中

来自分类Dev

如何将参数从main方法传递到另一个类

来自分类Dev

将一个类的对象传递给另一个类的方法

来自分类Dev

将模板类实例传递给另一个类的构造函数

来自分类Dev

使用构造函数将驱动程序实例传递给另一个类

来自分类Dev

通过另一个类将对象传递给一个类

来自分类Dev

将当前类的对象传递给另一个类

来自分类Dev

将另一个类的对象传递给单例类

来自分类Dev

将模板类的对象传递给另一个类的构造函数

来自分类Dev

如何访问属于我传递给另一个类的类的实例的属性?

来自分类Dev

将类的方法作为参数传递给C ++中的另一个类

来自分类Dev

如何从另一个类访问main中定义的classA对象

来自分类Dev

您如何将一个类的main方法中定义的变量传递给另一类?

来自分类Dev

如何将编写的对象传递给另一个类的构造函数?

来自分类Dev

SwiftUI通过引用将类对象传递给另一个视图

来自分类Dev

Android-将数组(对象的类)传递给另一个活动

来自分类Dev

传递给另一个类时不创建NSMutableDictionary的新实例

来自分类Dev

将当前类的实例作为参数发送给另一个

来自分类Dev

将getClass()作为参数传递给另一个类

来自分类Dev

将数组传递给另一个类

来自分类Dev

将对象传递给另一个类是否会创建一个新的单独对象?

来自分类Dev

AbstractControl对象如何传递给另一个类?

来自分类Dev

引用相同对象类型的另一个对象实例的类对象属性

Related 相关文章

  1. 1

    试图将一个对象的实例传递给另一个类

  2. 2

    将Ruby对象的实例变量作为映射传递给另一个类的初始化程序

  3. 3

    如果我将一个对象的实例传递给另一个类,它是否仍被视为该对象的相同实例?

  4. 4

    将类实例的输出作为输入传递给另一个

  5. 5

    如何将模板化类实例作为模板参数传递给另一个模板?

  6. 6

    引用从另一个类模块在main中创建的类的实例

  7. 7

    将类的实例传递给另一个构造函数,该构造函数将其对象添加到所传递的实例拥有的列表中

  8. 8

    如何将参数从main方法传递到另一个类

  9. 9

    将一个类的对象传递给另一个类的方法

  10. 10

    将模板类实例传递给另一个类的构造函数

  11. 11

    使用构造函数将驱动程序实例传递给另一个类

  12. 12

    通过另一个类将对象传递给一个类

  13. 13

    将当前类的对象传递给另一个类

  14. 14

    将另一个类的对象传递给单例类

  15. 15

    将模板类的对象传递给另一个类的构造函数

  16. 16

    如何访问属于我传递给另一个类的类的实例的属性?

  17. 17

    将类的方法作为参数传递给C ++中的另一个类

  18. 18

    如何从另一个类访问main中定义的classA对象

  19. 19

    您如何将一个类的main方法中定义的变量传递给另一类?

  20. 20

    如何将编写的对象传递给另一个类的构造函数?

  21. 21

    SwiftUI通过引用将类对象传递给另一个视图

  22. 22

    Android-将数组(对象的类)传递给另一个活动

  23. 23

    传递给另一个类时不创建NSMutableDictionary的新实例

  24. 24

    将当前类的实例作为参数发送给另一个

  25. 25

    将getClass()作为参数传递给另一个类

  26. 26

    将数组传递给另一个类

  27. 27

    将对象传递给另一个类是否会创建一个新的单独对象?

  28. 28

    AbstractControl对象如何传递给另一个类?

  29. 29

    引用相同对象类型的另一个对象实例的类对象属性

热门标签

归档