从C到C++(头文件-注释-名字空间)

学完C语言,要马不停蹄的开始C++的日程了~~,之前接触过,可都是比冰山一角,从今天开始打卡C++啦,据说是三小时速成版,但脑子笨,还是要想好几天,绝大多数都是讲课的内容,还有一些自己的想法。不当之处,还请指出。嘿嘿 ~;

1.C++头文件不必是以.h结尾,C语言中的标准库头文件math.h、stdio.h,在C++标准库头文件中被命名为cmath、cstdio.

#include <cmath> 
#include <cstdio>
int main()
{
	double a=1.2;
	a=sin(a);
	printf("%lf\n",a);
	return 0;
}

2.C++除了C的多行注释,还可以使用单行注释
(在 C99 标准中,单行注释正式加入C语言,但是大部分编译器在 C99 之前就已经开始支持这种用法。有时候,其被称作“C++风格”的注释,但实际上,其源自于C的前身 BCPL。)

/*
C的多行注释 ,用于注释一块代码
*/
#include <cmath>
#include <cstdio>
int main()//程序执行的入口,main主函数 
{
	double a=1.2; //定义一个变量a 
	a=sin(a);		
	printf("%lf\n",a);//用格式符%lf输出a :lf表示是double类型 
	return 0;
}

3.名字空间 namespace
目的:是防止名字冲突(出现同名),C++引入了名字空间(namespace)
通过 ::运算符 来限定某个名字属于哪个空间
例:如果计科和物联网都有一个叫帅龙的人,直接写不能区分 ,则如下引用:
“计科”::“帅龙”
“物联网”::“帅龙”
“::” 为限定运算符,来限定某个名字属于哪个空间

定义:namespace 为关键字

#include <cstdio>
namespace first   //first名字空间,里面的都属于first名字空间 
{
	int a;
	void f(){...}
	int g(){...}
}
namespace second
{
	double a;
	double f(){...}
	char g;
}

int main()	//main没有定义名字空间,其是全局名字空间 
{
	first::a=2;      
	second::a=6.43;
	first::a=first::g()+secong::f();
	second::a=first::g()+6.43;
	
	printf("%d\n",first::a);
	printf("%lf\n",second::a);
} 

引用方法:通常有3种方法使用 名字空间X的名字name
①using namespace X;//引用整个名字空间
②using::X;//使用单个名字
③X::name;//程序中加上名字空间前缀

原创文章 46 获赞 56 访问量 3887

猜你喜欢

转载自blog.csdn.net/qq_46009744/article/details/105185997