c++基础之多文件项目,extern的用法

来源:互联网 发布:淘宝大学原道电商学院 编辑:程序博客网 时间:2024/06/16 15:49
main.cpp#include<stdio.h>extern double get_area(double r);int main(){    double r;    printf("enter r: ");    scanf("%lf",&r);    double area=get_area(r);    printf("result:%.3lf\n",area);    return 0;}other.cppdouble get_area(double r){    return 3.14*r*r;}

extern,外部的。
extern:声明外部函数
在A.cpp中使用B.cpp中的函数,需要extern声明;
extern:声明外部全局变量
在A.cpp中访问B.cpp中的全局变量,需要extern声明;

extern的作用:告诉编译器,在某个cpp文件中,存在这么一个函数/全局变量。

注:符号(symbol):把函数名和全局变量名,称为符号。

使用extern

全局变量的声明与定义

声明:
extern int a;
extern double b;
extern float numbers[5];

定义:
int a=10;
double b;
float numbers[5]={1.o,1.1};

注:全局变量的声明语句是不能加初始值的。
函数声明语句中,extern可以省略。

项目生成过程:分为两步

第一步:编译 compile
将所有cpp转化为obj文件

第二步:链接 link
将各个obj文件综合在一起,生成可执行程序

extern意义:
1.模块化,将逻辑相关的功能放在同一个cpp里
2.多人合作,让不同的人编辑不同的cpp文件。