关于c语言中的声明和定义

变量和对象不加extern永远是定义,类中的除外。
函数只有函数头是声明,有函数体的是定义。
类永远只是声明。类成员函数的函数体是定义。

大致为有内存分配的为定义,没有内存分配的为声明。

例:

是声明还是定义,判断的原则是看是否占用内存。例如:

class MyClass //类的声明,无内存占有
{
  string myString; //string的声明
};

但是

#include<iostream>
 
//全局作用域
string myString;//定义,myString是实例化的string!
 
int main()
{
  //Main函数体内
  string myAnotherString;//定义,myAnotherString是实例化的string!
  return 0;
}
一切源于对计算机的热爱
原文地址:https://www.cnblogs.com/liuweilinlin/p/2555676.html