【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);
相关推荐
a努力。13 小时前
字节跳动Java面试被问:一致性哈希的虚拟节点和数据迁移
java·开发语言·分布式·算法·缓存·面试·哈希算法
老四啊laosi13 小时前
[C++初阶] 9. STL--string使用(二)
c++
文慧的科技江湖13 小时前
重卡的充电桩一般都是多少千瓦? - 慧知开源充电桩平台
java·开发语言·开源·充电桩开源平台·慧知重卡开源充电桩平台
SunkingYang13 小时前
QT中如何使用QMessageBox 实现提示、警告、错误报告和用户决策功能
c++·qt·提示·错误·告警·用法·qmessagebox
小白学大数据13 小时前
爬虫技术选股:Python 自动化筛选潜力股
开发语言·爬虫·python·自动化
悟能不能悟13 小时前
jasper里面$F和$P的区别
开发语言·后端
辰风沐阳13 小时前
JavaScript 的 WebSocket 使用指南
开发语言·javascript·websocket
独自破碎E13 小时前
【前序+中序】重建二叉树
java·开发语言
Once_day13 小时前
CC++八股文之内存
c语言·c++
2301_7657151413 小时前
C语言轮子制造
c语言·开发语言·制造