声明:(本文件/其他文件/将来会/有这个东西)
- 告诉编译器,这个变量名或对象已经匹配到一块内存空间上了。声明可以出现多次。
- 告诉编译器,这个名字已经被预定了,别的地方再也不能它来作为变量名或对象名。这种声明最典型的例子就是函数参数的声明
定义:(分配空间)
就是编译器为一个变量或对象分配一块内存空间,并给它取上名字。这个名字就是变量名或对象名。并且,在这个变量的作用域中只能被定义一次,当被定义多次的时候,编译器会报错。说你重覆定义同一个变量或对象。
声明/定义次数
变量/函数可以声明多次,变量/函数的定义只能一次。
分配内存
声明不会分配内存,定义会分配内存。
做了什么
声明是告诉编译器变量或函数的类型和名称等,定义是告诉编译器变量的值,函数具体干什么。