C++二级考试总结

1、友元函数:

【1】友元函数的调用,在main函数中调用可以像普通函数一样调用:

【2】友元函数不属于任何类,能访问类中的所有成员

【3】友元函数的形参为类对象的引用

如:friend void showDate(Date &d);

【4】如果一个A类是另一个B类的友元类,则A类的成员函数都是B类的友元函数

 

2、常量数据成员:

常量成员的初始化只能通过构造函数的成员初始化列表进行,并且需要使用关键字const修饰。

class MyClass 
{
  int _i;
  friend void Increment(MyClass & f);
public:
  const int NUM;
// ERROR  ********found********
  MyClass( int i = 0) :NUM(0) //因为NUM为常成员,所以需要在初始化列表中进行初始化
  {
	  _i = i;
  }
  
  int GetValue() const { return _i; }
};
wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

3、关于运算符的重载

【1】C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载;

【2】C++不能重载的运算符只有5个;

【3】重载不能改变运算符的优先级和结合性;

【4】重载不能改变运算符运算对象的个数;

【5】重载运算符的函数不能有默认的参数;

【6】重载的运算符必须和用户定义的自定义类型的对象一起使用,至少应有一个类对象,即不允许参数全部是C++的标准类型。

4、this指针

只有类的非静态成员函数才隐含this指针,其作用域是类内部,当类的非静态成员函数中访问类的非静态成员时,编译器会自动将对象本身的地址作为一个隐含参数传递给函数,而不必一定写上this。

5、派生类

【1】派生类应该向基类的构造函数传递参数

6、对象指针

【1】在main函数中定义一个对象指针,并调用,如:

MyClass *obj=new MyClass;
  obj->Inc();

7.函数重载:

在C++中只要函数参数的类型不同,或者参数的个数不同,或者两者兼而有之;两个或者两个以上的函数可以使用相同的函数名。在同一作用域内,当两个或者两个以上的函数共用一个函数时,称为函数的重载。

如:void fun (int a,double b = 0.0),则可以表示重载函数声明为

void fun (double a,int B);

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 11
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值