一.hello world的书写
- 头文件#include
- 使用命名空间 :using namespace std;
-
- 输出:cout<<想输出的内容<<endl;
- 如果屏幕一闪而过:system(“pause”);
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
int main()
{
cout << "hello world" << endl;
system("pause");
return 0;
}
. . . 二.双冒号作用域运算符
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
int atk = 200;
void test01()
{
int atk = 100;
cout << "攻击力为:" << atk << endl;
cout << "全局攻击力为:" << ::atk << endl;
}
int main()
{
test01();
system("pause");
return 0;
}
. . . 三.namespace(命名空间)的使用 必须在全局作用域下声明!using namespace std;
- 解决名称冲突问题
在头文件王者荣耀和头文件LOL同样有goatk()函数
头文件王者荣耀.h
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
namespace KingGlory
{
void goatk();
}
源文件王者荣耀.cpp
include"KingGlory.h"
void KingGlory::goatk()
{
cout<<"KingGlory攻击指令"<<endl;
}
. . . 头文件LOLh
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
namespace LOL
{
void goatk();
}
源文件LOL.cpp
#include"LOL.h"
void LOL::goatk()
{
cout<<"LOL攻击指令"<<endl;
}
. . . 操作文件
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
include"LOL.h"
include"王者荣耀.h"
int main()
{
LOL::goakt();
KingGlory::goatk();
system("pause");
return 0;
}
- namespace命名空间下 可以放函数、变量、结构体、类
namespace A
{
void fun();
int a=10;
struct person
{
};
class Animal();
}
- 命名空间可以嵌套命名空间,并且命名空间可以起别名
namespace A
{
void fun();
int a=10;
struct person
{
};
class Animal();
namespace B
{
int b=20;
}
}
int main()
{
namespace C=B;
cout<<"作用域B下b的值为:"<<A::C::b<<endl;
system("pause");
return 0;
}
- 命名空间是开放的,可以随时加入,并且不会覆盖前面在该空间中已经定义的元素
- 匿名空间
namespace
{
int m_a=0;
int m_b=1;
}
当写了无名命名空间,相当于写了static int m_a=0;static int m_b=0;
只能在当前文件中使用(静态变量)
. . .
四.using声明和using编译语句
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable : 4996)
#include<iostream>
using namespace std;
int atk = 200;
namespace KingGlory
{
int a = 10;
}
namespace LOL
{
int a = 20;
}
void test01()
{
int a = 20;
using KingGlory::a;
cout << a<< endl;
}
void test02()
{
int a = 20;
using namespace KingGlory;
cout << a << endl;
}
void test03()
{
using namespace KingGlory;
using namespace LOL;
cout << LOL::a << endl;
}
int main()
{
test01();
system("pause");
return 0;
}
文章转自布尔博客 欢迎关注技术公众号,获取更多硬件学习干货!
我们能为你提供什么? 技术辅导:C++、Java、嵌入式软件/硬件 项目辅导:软件/硬件项目、大厂实训项目 就业辅导:就业全流程辅导、技术创业支持 对接企业HR:培养输送优质性人才
|