C++
吾思故吾在
永远也不要停下学习的脚步!!!
展开
-
形式参数和实际参数
形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。形参和实参的功能是作数据传送。发生函数调用时,主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。函数的形参和实参具有以下特点:1.形参变量只有在被调时分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效,函数转载 2017-09-11 08:31:00 · 1358 阅读 · 0 评论 -
(有参)构造函数
构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。(摘于百度百科)C++的构造函数定义格式为:class {public:(参数表);//...(原创 2017-12-03 12:42:57 · 2575 阅读 · 0 评论 -
(转)为什么operator运算符重载一定要为友元函数呢
如果是重载双目操作符(即为类的成员函数),就只要设置一个参数作为右侧运算量,而左侧运算量就是对象本身而 >> 或<< 左侧运算量是 cin或cout 而不是对象本身,所以不满足后面一点,就只能申明为友元函数了如果一定要声明为成员函数,只能成为如下的形式:ostream & operator<<(ostream &ou转载 2018-08-06 22:59:58 · 1398 阅读 · 0 评论 -
C++的反斜杠“\”-续行符
系统规定,宏定义的时候,代替的语句很长或者是个语句块甚至函数的时候,就需要用到这个反斜杠了!看下面:这玩意儿有个正式的名称叫做续行符,在普通代码行后面加不加都一样(VC是自动判断续行的),但是在宏定义里面就特别有用,因为宏定义规定必须用一行完成:#define SomeFun(x, a, b) if(x)x=a+b;else x=a-b;这一行定义是没有问题的,但是这样代码很不容易被理解...转载 2018-11-07 15:51:49 · 495 阅读 · 0 评论 -
解释C++实例化类的指针类型中的new
Intarray * parray = new Intarray();//括号int * parray = new int();两个都不止是申明,已经初始化了。第一句是创建(实例化)了一个Intarrya的对象,指针parray指向它。第二句是创建(分配了)了int类型的内存空间,指针parray指向那个空间。两个指针都已初始化了...转载 2018-11-07 16:04:46 · 1592 阅读 · 0 评论 -
C++ 友元类
1.定义: 当一个类B成为了另外一个类A的“朋友”时,那么类A的私有和保护的数据成员就可以被类B访问。我们就把类B叫做类A的友元。2.注意事项:值得提醒的是友员关系是单项关系,但是如果要相互作用的话,需要设置相互关系,这种关系在现实生活中的朋友关系差别有点大,呵呵~,而且这种关系尽量避免。3.具体代码:例一.#include <iostream>using names...转载 2018-11-07 23:58:52 · 2612 阅读 · 0 评论