C++头文件和命名空间
- C++头文件
- 创建的文件,不再是c语言的.c文件,而是.cpp文件
- 包含头文件的方式:包含自己头文件的方式和C语言没有 任何区别incelude"myhead.h"
- 包含库目录:iostream,c++标准输入输出流的头文件
- C语言中原来的方式可以,没有任何问题,也可以C++的包含方式,去掉.h,加个c
#include <stdio.h>
#include <cstdio>
#include <iostream>
namespace 空间名{
}
- 命名空间的作用:在C语言中,同一作用域下不能存在相同的标识符,为增加标识符的使用率,引入了命名空间,命名空间里边可以存在任何东西,变量、结构体、函数…等等。
- 学会去访问命名空间中的成员,MM里的空间成员和GG里的空间成员不会发生冲突
namespace MM{
int a = 1;
void print(){
printf("MM中的函数\n");
}
}
namespace GG {
int a=2;
void print();
}
main(){
GG::a;
GG::print();
return 0;
}
- 第一种方法,空间名限定去访问,在空间中声明,在外面实现调用空间中的函数要用到 :: 作用域分辨符 告诉别人::后面东西是哪里的来。这是C语言中没有的
void GG::print() {
printf("GG中函数的\n");
}
- ::作用域分辨符:空间名限定,类名限定,还可以用来标识全局变量
int xx=1;
main(){
int xx=2;
printf("%d\n",xx);