-
不给实参,默认形参(形参输入有要求,从右端起) 调用函数时,只给一个 实参 从左第一个 或者两个 函数重载 参数类型不同double 或者 int 方便起名 inline 建议使用,只是省略步骤,结果不变,记着要求查看全部
-
有默认参数值的参数必须在参数表的最右端 声明时可以加参数默认值,定义函数时不建议加函数默认值 没有实参使用默认值,有实参就使用实参 内联函数必须足够简单,不能有for循环之类的复杂的逻辑结构。递归函数无法使用内联函数查看全部
-
const int * p 可以看成const int (*p),(*p)不能改变,但p可以改变;也就是说(*p)不可以通过*p来改变所指向的值,但是p没有被const定义所以p可以改变指向。这也等同于 int const * p。 int * const p可以看成int * const (p),p是指针不能改变其p的指向,但是*p没有被const定义,所以可以通过*p改变所指向变量的值。查看全部
-
int const a=3; int *p=&a; 存在通过*p改变常量a值的风险,故修改为:const int *p=&a;查看全部
-
int const *p=&x;不能给*p赋值,可以给p赋值,可以给x直接赋值;<br> int *const p=&x;不能给p赋值,可以给*p赋值; 只有指针常量才能指向常量,一般指针不行。查看全部
-
const int * p 可以看成const int (*p),(*p)不能改变,但p可以改变;也就是说(*p)不可以通过*p来改变所指向的值,但是p没有被const定义所以p可以改变指向。这也等同于 int const * p。 int * const p可以看成int * const (p),p是指针不能改变其p的指向,但是*p没有被const定义,所以可以通过*p改变所指向变量的值。查看全部
-
const(控制变量是否可以变化) const int x=3;(则此时x为常量,不可进行再赋值) const与指针类型 const int *p=NULL; int const *p=NULL;(两种写法完全等价) int *const p=NULL; const int *const p=NULL; int const *const p=NULL;(这两种写法也是完全等价的) int x=3; const int *p=&x; *p=4(错误,因为const指定的为*p);p=&y;(正确) int x=3; const int *const p=&x; p=&y(错误,因为const指向的为p,只能为x的地址) const与引用 int x=3;const int &y=x; y=10(错误,y通过const限定只能为x的别名,值为3) 总结: const int x=3;int *y=&x;(这种写法是错误的因为x本身定义为const,在用一个可变的指针指向,那么就有用指针改变x值得风险,这是系统所不允许的);查看全部
-
代码。查看全部
-
引用时需赋值,例:int a; int &b = a;(对) int &a; int &b (错)查看全部
-
引用的例子:实现两个数交换。 #include <iostream> using namespace std; void swap(int &a,int &b) { int c = 0; c = a; a = b; b = c; return; } int main(void) { int x = 10; int y = 20; cout << "x = " << x << " , y = " << y << endl; cout << "After using functional swap..." << endl; swap(x,y); cout << "x = " << x << " , y = " << y << endl; system("pause"); return 0; }查看全部
-
const与define的区别在于const可被编译,可以检查错误,而define不行查看全部
-
此节阐释了const的用法,将变量变成常量,将指针固定为常量,固定为常量的值是不能够改变的查看全部
-
此节为引用,包含变量的引用,指针的引用,结构体的引用,函数传递的引用查看全部
-
指针指向const修饰的a变量时(const int a等价int const a),应该是const int const*p=&a查看全部
-
const int *p=int const *p查看全部
举报
0/150
提交
取消