【问题标题】:Fundamental data type variables VS Object variables基本数据类型变量 VS 对象变量
【发布时间】:2019-01-21 11:30:45
【问题描述】:

最近我做了一个关于c++指针的研究。

很明显,指针存储值所在的内存地址,而基本数据类型变量(int、float、boolean ...)存储值本身。

但是对象变量(Object myVariable)呢?他们持有什么?

【问题讨论】:

  • 简而言之:它们“持有”基类子对象和(非静态)成员子对象(成员变量)。相关标准部分:eel.is/c++draft/basic.memobj#intro.object-2.
  • 不只是挑剔,而是根据 C++ 标准,int 确实是一个对象。您需要区分一般对象和 C++ 对象模型上下文中的对象。

标签: c++


【解决方案1】:

在 C++ 中,“对象”是指在抽象机器中以字节表示的任何东西。您可以拥有int 对象、char * 对象(可能指向char 对象)、std::vector<std::string> 对象等。

class 类型的对象表示未完全指定,但确实包括每个基和数据成员的表示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-09
    • 2013-11-26
    • 1970-01-01
    • 2010-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多