【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);
相关推荐
天若有情6731 分钟前
IoC不止Spring!求同vs存异,两种反向IoC的核心逻辑
java·c++·后端·算法·spring·架构·ioc
tankeven8 分钟前
HJ103 Redraiment的走法
c++·算法
模型时代13 分钟前
Arista暗示正在开发AI网络管理遥测工具
开发语言·人工智能·php
张3蜂18 分钟前
Python变量与命名规范:从入门到精通
开发语言·python
瓦特what?18 分钟前
平 滑 排 序
c++·算法·排序算法
电商API_1800790524721 分钟前
京东商品评论API接口封装的心路历程
服务器·开发语言·爬虫·数据分析·php
扶尔魔ocy31 分钟前
【转载】QT使用linuxdeployqt打包
开发语言·qt
Trouvaille ~36 分钟前
【动态规划篇】专题(二):路径问题——在网格图中的决策艺术
c++·算法·leetcode·青少年编程·动态规划
好家伙VCC1 小时前
# 发散创新:基于Python的TTS语音合成实战与优化策略 在人工智能加速落地的今天,**文本转
java·开发语言·人工智能·python