【C++二级】题一:构造函数

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

复制代码
#include <iostream>
using namespace std;
class MyClass {
  int _i;
  friend void Increment(MyClass& f);
public:
  const int NUM;
// ERROR  ********found********
  MyClass(int i = 0):NUM{0}{
    _i = i;
  }
  int GetValue() const { return _i; }
};

2.友元函数的定义要与函数的声明相呼应,即返回值、参数类型、参数个数要一致。友元函数的调用不需要使用类名和作用域

复制代码
void Increment(MyClass& f) { f._i++; }

3.友元函数的调用不需要类名和作用域

复制代码
  Increment(obj);
相关推荐
辞旧 lekkk27 分钟前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
2zcode1 小时前
运动模糊图像复原的MATLAB仿真与优化
开发语言·matlab
袁雅倩19971 小时前
当吸尘器、筋膜枪都用上Type-C,供电方案该怎么选?浅谈PD取电芯片ECP5702的应用
c语言·开发语言·支持向量机·动态规划·推荐算法·最小二乘法·图搜索算法
Aaswk2 小时前
Java Lambda 表达式与流处理
java·开发语言·python
万邦科技Lafite2 小时前
京东item_get接口实战案例:实时商品价格监控全流程解析
java·开发语言·数据库·python·开放api·淘宝开放平台
王老师青少年编程3 小时前
csp信奥赛C++高频考点专项训练之字符串 --【子串查找】:[NOIP 2009 提高组] 潜伏者
c++·字符串·csp·高频考点·信奥赛·子串查找·潜伏者
Cyber4K3 小时前
【Python专项】进阶语法-系统资源监控与数据采集(1)
开发语言·python·php
初願致夕霞3 小时前
基于系统调用的Linux网络编程——UDP与TCP
linux·网络·c++·tcp/ip·udp
Le_ee4 小时前
ctfweb:php/php短标签/.haccess+图片马/XXE
开发语言·前端·php
yong99905 小时前
MATLAB读取高光谱图像
开发语言·matlab