声明跟定义的本质区别是什么?

int a;
这算是声明还是定义?

                 声明就是指给除了当前变量或者函数,或者类什么的名字,不给其中的内容,就是先告诉你有这样一个什么类型的变量或者函数,但是这个变量或者函数的具体信息却是不知道的。就好比跟你介绍一个人的时候,声明就是只告诉你这个人叫什么,但是缺不给你说这个人到底怎么样,他有哪些优点,缺点,喜好问题是什么的。

              定义就不一样了,定义直接告诉你了所有的东西,这个变量是什么,这个函数是什么功能,这个类里面包含了什么东西。很具体的说明。

    当然一般对于变量来说,我们不怎么区分声明或者定义之类的,一般没有人去说我要声明一个变量,然后定义这个变量什么的。要说都是直接说定义变量。

    声明一般都是对函数或者类来说的,声明在前,定义在后。

    int a;可以说是声明,广泛的说是定义一个变量a,也不算错。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-18
int a 等价于 声明一个人:小张
int a = 3 等价于 定义一个人 :小张 年龄为三岁。

定义是带有初始化的。

函数的声明和定义

void My(); // 这个是声明

//这个是定义
void My()
{

}
第2个回答  推荐于2017-10-07
int a; // 这样属于声明,并没有给a定义他的值为多少,因此他可能是任意值,如果后面直接使用会有意想不到的后果
int a = 3; // 这样属于声明int类型变量a,并定义为3
第3个回答  2018-06-06
int a; // 定义性声明,既属于声明又属于定义

int a = 3; //属于初始化
相似回答