-
申请失败查看全部
-
函数重载:多个函数名相同,函数形参类型或者函数参数个数不同的函数成为函数重载查看全部
-
const*p = &x;这里const修饰*p,则不能在改变*p;只能改变p(如p = &y),*const p则表明p这个地址不能在重新赋值。查看全部
-
释放内存注意事项查看全部
-
申请和释放块内存查看全部
-
声明写默认值,函数体不写,防编译不通过查看全部
-
有默认参数值的参数必须在参数表的最右端查看全部
-
#include <string.h> #include <iostream> using namespace std; int main(void) { //在堆中申请100个char类型的内存 char *str = new char[100]; if( str == NULL ) { return 0; } //拷贝Hello C++字符串到分配的堆中的内存中 strcpy(str, "Hello imooc"); //打印字符串 cout << str << endl; //释放内存 delete []str; str = NULL; return 0; }查看全部
-
//把 arr[i] > maxNum 写成 maxNum < arr[i] 就通过不了,无语。 重写了一个不一样的复习了一下引用。 #include <iostream> #include <algorithm> #include <cstdio> using namespace std; /** *函数功能:返回a和b的最大值 *a和b是两个整数 */ int getMax(int a, int b) { return max(a,b); } /** * 函数功能:返回数组中的最大值 * arr:整型数组 * count:数组长度 * 该函数是对上面函数的重载 */ int getMax( int (&arr)[3] ) { int maxNum = arr[0];//定义一个变量并获取数组的第一个元素 int len = sizeof(arr)/sizeof(arr[0]); for(int i = 1; i < len; i++) { //比较变量与下一个元素的大小 if( maxNum < arr[i]) { maxNum = arr[i];//如果数组中的元素比maxNum大,则获取数组中的值 } } return maxNum; } int main(void) { //定义int数组并初始化 int numArr[3] = {3, 8, 6}; int a = 3; int b = 5; //自动调用int getMax(int a, int b) cout << getMax(a,b) << endl; //自动调用返回数组中最大值的函数返回数组中的最大值 cout << getMax(numArr)<< endl; return 0; }查看全部
-
#include<cstdio> #include<algorithm> #include<iostream> #include<cstring> using namespace std; void num( int i=1, int j=2, int k =3 ); //void num( int i=1, int j=2 ); void num( double i , int j ); void num( double i , double j); int main() { num(8,9); printf("\n"); num(7); printf("\n"); num(3.2); printf("\n"); num(10.1,1); printf("\n"); //num(1,2.1); printf("\n"); num(12.2,12.2); printf("\n"); num(3.2,3.2,3.2); printf("\n"); return 0; } void num( int i, int j, int k ) { cout << i << " " << j << " " << k << endl; } void num( int i, int j ) { cout << i << " " << j << endl; } void num( double i , int j ) { cout << i << " " << j << endl; } void num( double i , double j) { cout << i << " " << j << endl; } // 通过小程序验证,如果函数参数默认值的设置和函数重载出现冲突,使得程序无法判断 重载函数,则会报错 // 如果程序可以简单的判断选择那个函数运行,类型不一致也不会出现报错的情况 // 所以,函数参数默认值的设置要小心。 // 其他的注意事项如同 默认值从后往前等,不累述。查看全部
-
int const a = 3;int *p =&a; ×此用法错误。查看全部
-
申请内存 删除内存查看全部
-
//略微整理了一下,看完了应该会有点帮助 #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> using namespace std; int cg(int &a,int &b) { int c; c = a; a = b; b = c; } int main() { int a,b; scanf("%d%d",&a,&b); printf("%d %d\n",a,b); // 1 int &d = a; int &e = b; int mid; mid = d; d = e; e = mid; printf("%d %d\n",a,b); // 2 cg(a,b); printf("%d %d\n",a,b); // 3 int *f = &a; int **fl = &f; int *g = &b; int **gl = &g; mid = **fl; **fl = **gl; **gl = mid; printf("%d %d\n",a,b); //4 int *p = &a; int *q = &b; int *&pl = p; int *&ql = q; mid = *pl; *pl = *ql; *ql = mid; printf("%d %d\n",a,b); // 5 int *h = &a; int **hl = &h; int *k = &b; int *&kll = k; mid = **hl; **hl = *kll; *kll = mid; printf("%d %d\n",a,b); //6 return 0; }查看全部
-
指针指向const修饰的变量时,应该是const int const *p = &a; int const a = 3; int *p = &a; 这个写法是错误的,只有在指针前面const修饰后,才可以,只因变量a是const的,查看全部
-
引用就是变量的别名查看全部
举报
0/150
提交
取消