Answers:
据我所知,调用该类型的原始类型实例的值是正确的 (例如,参见Visual Studio手册中的“ C ++ Type System”,但我仍在寻找其他来源),尽管我相信这个术语是主要用于讨论对象时。如果对象是从类C或其子类之一中定义的构造函数生成的,则它是类C的实例。
C ++中的变量不是运行时概念。它作为变量名和抽象(如果不是const时是可变的)位置之间的词汇绑定,存在于编译器内部。一旦程序被编译,变量就不存在了。而是在寄存器,内存等中读取和写入数据。
int
。在讨论变量声明的作用时,C ++标准没有在原始类型和非原始类型之间进行区分。因此,无论类型是什么,都T t;
声明一个type的对象。T
T
还是“事物的实例”与类和对象严格相关?如果是这样,当涉及到C ++时,您将如何定义“变量”的概念?
为C ++尽可能简洁
只是要清楚:
malloc()
的但未初始化的缓冲区时,您有一点要注意:这是一个尚未成为对象的存储区。同样,已被明确销毁的对象:这是一个不再是对象的内存区域。
除非您想一生都从事纯粹主义和幽灵主义...是的。
每当您保留唯一标识的内容时,就可以伪造您正在实例化的其他唯一标识的内容。
这些实例中的某些实例可能具有更准确的名称,但是总的来说,这是可行的。
许多人为类的实例保留“实例”。如果在C ++中执行此操作,则变量可能是类的实例,对实例的引用,对实例的指针或原始类型(在这种情况下,您可能将结构视为类,它们几乎是完全一样)。在Java或Objective-C中,变量永远不会是实例,而可能是对实例的引用。
忘记了:在很短的时间内,C ++指针可以是指向原始内存的指针,例如在构造函数开始执行之前的“ this”。您可能目前还没有将* this称为实例。