头文件
C风格
代码语言:javascript复制#include<stdio.h>
#include<math.h>
C 风格
代码语言:javascript复制#include<iostream>
#include<cstdio> //C 风格
#include<cmath> //math.h cmath
02
输入输出
代码语言:javascript复制#include<stdio.h>
#include<iostream>
using namespace std; //命名空间 名字空间两种叫法
int main()
{
//输出
printf("hello worldn");
cout << "hello world" << endl; //endl endline换行
//输入
int num;
scanf("%d", &num);
cin >> num;
system("pause");
return 0;
}
说明
- 不能直接使用cout,cin,像C一样,需要加上头文件,此外还要加上命名空间
#include<iostream>
//命名空间的使用
//方式一:
using namespace std;
//方式二
using std::cout;
using std::cin;
using std::endl;
//方式三
//输出
std::cout << "hello world" << std::endl; //endl endline换行
- 注意cout<<,cin>>里面的流操作符的方向
- endl是n的意思,endline换行
03
命名空间
作用
作用:划分逻辑区域,解决名字冲突
创建
代码语言:javascript复制namespace 名字空间{}
//1.创建名字空间
namespace DeRoy
{
void fun()
{
cout << "我是DeRoy的fun函数" << endl;
}
}
使用
::作用域限定符
代码语言:javascript复制#include<iostream>
using namespace std; //命名空间 名字空间
int main()
{
std::cout << "hello world" << std::endl;
return 0;
}
名字空间声明
代码语言:javascript复制using 名字空间::成员
#include<iostream>
using std::cout;
using std::cin;
using std::endl;
namespace DeRoy
{
void fun()
{
cout << "我是DeRoy的fun函数" << endl;
}
}
using DeRoy::fun;//DeRoy空间里面的fun函数全局可见
int main()
{
cout << "hello world" << endl;
fun(); //调用fun函数
return 0;
}
名字空间指令
代码语言:javascript复制using namespace 名字空间
#include<iostream>
using namespace std; //命名空间 名字空间
namespace DeRoy
{
void fun()
{
cout << "我是DeRoy的fun函数" << endl;
}
}
using namespace DeRoy;
int main()
{
std::cout << "hello world" << std::endl;
fun();
return 0;
}
命名空间合并
代码语言:javascript复制#include<iostream>
using namespace std; //命名空间 名字空间
namespace DeRoy
{
void fun()
{
cout << "我是DeRoy的fun函数" << endl;
}
}
namespace DeRoy //命名空间合并 同名空间合并
{
void test()
{
cout << "我是DeRoy的test函数" << endl;
}
}
int main()
{
DeRoy::fun();
DeRoy::test();
return 0;
}
声明和定义分开
代码语言:javascript复制#include<iostream>
using namespace std; //命名空间 名字空间
namespace DeRoy //命名空间合并 同名空间合并
{
void test();
}
void DeRoy::test() //命名空间成员函数 声明和定义分开
{
cout << "我是DeRoy的out函数" << endl;
}
int main()
{
DeRoy::test();
return 0;
}
命名空间嵌套
代码语言:javascript复制//命名空间嵌套
namespace ShanXi
{
namespace XiAn
{
namespace ChangAn
{
void SchoolName()
{
cout << "西北工业大学" << endl;
}
}
}
}
命名空间别名
代码语言:javascript复制namespace Changan = ShanXi::XiAn::ChangAn;
思维导图:
来源:XMind