对象和变量的区别,该如何解决

对象和变量的区别
对象是指我们自己定义的类型,还有指针的变量吗?
然后变量是指基本类型的变量?
struct A之类的是对象还是变量
不解...求高手解答,谢谢

------解决方案--------------------
类的实例叫做对象


变量 对应的 是常量 是指可以修改的对象 

所以一个对象可以是变量也可以是常量

基本类型也是可以new在c++中 int i的i也可以看做一个int类的对象

------解决方案--------------------
可以认为所有的变量都是一种对象。对象主要是从设计的思想上来分析的,而变量说的是基本语法。
------解决方案--------------------
探讨
不太理解对象是特殊的变量,这个特殊指什么?

------解决方案--------------------
对象是一段存储空间,而变量是一段命名的存储空间。

C++标准的内容:

1.8 The C+ + object model

An object is a region of storage.


3 Basic concepts

A variable is introduced by the declaration of an object. The variable’s name denotes the object.


------解决方案--------------------
探讨
引用:
引用:
引用:
不是。const修饰的依然是变量、依然是左值(不可修改的左值)、依然是对象。所谓变量、常量是不能只看表面上的变和常两个字来理解的。


临时对象就不是变量。

谢谢。。。不过网上看到const  int  i=1;//编译器不为i分配内存,编译器会对i进行常量折叠,那没代表一块一段存储空间了。。还能称作变量或对象?


要分清什么是标准,什么是实现,C++存在常量对象,这一点跟C是不同的,但对象性质与常量性质存在一些矛盾,无论C还是C++都没有禁止修改const对象,只规定属于未定义行为,常量折叠是一个对象性质与常量性质的绝妙折中,但毕竟只是一个实现方法,在C/C++的语法上,const依然是一个对象。

哦哦。。。有点了解了。。那
引用:
不是。const修饰的依然是变量、依然是左值(不可修改的左值)、依然是对象。所谓变量、常量是不能只看表面上的变和常两个字来理解的。


临时对象就不是变量。


还有想问下如何区分常量和变量。。。一直都认为const修饰都是常量的。。现在有点不解。。谢谢