1.数据类型 - c++提供了新的数据类型:bool型
2.初始化方法 - c语言:int x = 1
(复制初始化) - c++ : 除了复制初始化还有直接初始化:int x(1)
3.随用随定义 - c语言必须先最前面定义 - c++可以在中间随用随定义
4.输入和输出 - cin和sin - cout<<x<<endl;
- cout<<"x+y="<<x+y<<endl;
- endl其实就代表一个回车 - cin>>x;
- cin>>x>>y;
- 优点:不用关注占位符,不用关注数据类型
5.命名空间 - 关键字:namespace namespace A { int x=0; void f1(); void f2(); } namespace B { int x=2; void f1(); void f3(); }
- 要想输出A的x和B的f1则:
6.引用
int a=3;int &b=a;//引用必须初始化结构体类型的引用同理
指针类型的引用: 类型 *&指针引用名 = 指针;
引用作函数参数:
void fun(int &a, int &b){ int c=0; c = a; a = b; b = c; }int x = 10,y = 20;fun(x,y);//调用的时候直接写x,y就能改变x,y的值不使用引用时:
void fun(int *a, int *b){ int c=0; c = *a; *a = *b; *b = c; }int x = 10,y = 20;fun(&x,&y);//改变x,y的值7.const
const与指针:
int x = 3;const int *p = &x;//p = &y; 正确//*p = 4; 错误int x = 3;int *const p = &x;//p = &y;是错误的const int x =3;const int *const p = &x;//p = &y;//*p = 4;//都是错误的const与引用:
int x = 3;const int &y = x;//x = 10;正确//y = 20;错误const int x = 3;int *y = &x;//错误,因为指针是可变的,而指针指向的x是不可变的,这样我们就用一个权限大的去接受一个权限小的,有危险(可以通过改变指针的值来改变x,不可行)。int x = 3;const int *y = &x;//正确,用权限小的去接受权限大的宏定义也是定义常量,但是系统不检查错误.
8.函数
参数默认值 最右边的参数必须赋值
==
函数重载
==
内联函数 inline
新闻热点
疑难解答
图片精选