C++ 在对象中使用非指针值

标签 c++ oop

我知道这是非常基本的,但非指针值在构造函数中初始化时会保持其值吗?

class foo {
    private:
        int bar;
        int cool;
    public:
        foo(int tBar);
        ~foo();
}

foo::foo(int tBar) {
    bar = tBar;
    cool = -5;
}

或者换句话说,bar 稍后会保留 tBar 的值,并且在构造对象后 cool 仍然等于 5 吗?

答案是肯定的。我误以为每个成员变量都必须是指针!

但是

当我使用更复杂的对象类型(比如我自己的对象)时,它不会以这种方式工作。这是为什么?

最佳答案

答案是肯定的,对象会保持它的值

我还使用了蹩脚的对象。这就是它们没有值(value)的原因。

关于C++ 在对象中使用非指针值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46270488/

相关文章:

javascript - 使用一个Class的属性值根据时间影响另一个Class对象

oop - 客观上良好的 OO 设计原则

php DAL - 独立的实体和数据库?

c++ - 将临时对象保存在寄存器中以避免在虚拟机中进行额外的存储/加载?

c++ - 单独文件中的简单类和标题不起作用

c++ - 如何用 C++ 从 MySQL 获取 Blob 数据

c++ - GCC 内联汇编中的一个简单的 while 循环

java - 每次统计完出现次数后将结果添加到int数组

android - 捕获图像而不保存

c++ - 如何使用 log4cplus 在日志文件中打印方法名称