C++标准

标准的输入输出 
#include<iostream>
using namespace std; // 打开命名空间 标准c++的组件都在std的标准库中   
输入 cin>>变量名   
输出 cout<<变量名 <<endl //endl输出换行并清除缓存
作用域 
#include<iosteam>
using namesapce std;
int a=200;
int main()
{ int a=100;
cout<<a<<endl;//输出的a为100 //输出作用域最近的
}

若是想输出全局变量 a那么我们就该引入作用域运算符::  
::a代表全局变量 作用域运算符前面没有类名代表全局变量
定义命名空间 
namespace bird
{   int age=100;
}  
namesapce person
{
int age=200;
int main()
{
cout<<age<<endl;//这样输出就会报错因为程序并不知道是哪个age
}  
那么我们要输出age就有两种方法 1.打开命名空间  
using namespace bird;
using namespace person;
2.利用作用域运算符  cout<<bird::age<<endl;
c++是面向对象的语言 面性对象我们要考虑复用性和扩展性
动态的分配内存与释放
创建 int *p=new 要创建的数据类型;//在堆区动态分配空间
删除 delete p; p=0;//把p所指向的空间删除 p指针变量还在还装着原来的地址 要让p指向空;
分配一个整形数组
int *arr=new int [10]; 
delete [] arr; 
arr=0; 
int (*arr)[3]=new[2][3];
delete[]arr;
arr=0; 
定义函数
假如声明一个函数并给默认值 
void show(int a=10;int b=20;int c=30;int d=40) ;
在主函数中可以直接调用 也可以在主函数中重新赋值 若我们想附中间的值不赋两边的值就会出现问题
所以给函数的默认值是从后向前并且中间不能空
函数的重载 
同一个作用域 函数的名相同 函数的参数不同 
引用 
引用是c++语言的一种特殊的数据类型的描述 用于不同部分(作用域)两个及以上变量名指向同一块地址 
可以理解为变量的别名
int a; int &k=a; //k为a的引用也可以理解成a的别名  
引用只能认为是一个变量的别名 而指针可以指向任意一个空间  
指针和引用的区别
1.引用定义了就要初始化而指针不用
2.引用初始化后不能在重新引用其他空间
3.没有空的引用指针可以指向NULL  
函数参数的传递方式
1.值传递 2.地址传递 3.引用  
看是否修改传入的内容 修改不能用值传递 若不修改用值传递 
看是不是new的空间 是不是地址若是则用地址传递



猜你喜欢

转载自blog.csdn.net/qq_37163944/article/details/80382483
今日推荐