【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);
相关推荐
姬公子5216 分钟前
leetcodehot100刷题——排序算法总结
数据结构·c++·算法·排序算法
艾米莉亚糖17 分钟前
解决qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
开发语言·qt·ssl
她说彩礼65万33 分钟前
C# 中的锁
开发语言·c#
2302_8097983233 分钟前
【JavaWeb】JDBC
java·开发语言·servlet
烦躁的大鼻嘎35 分钟前
【Linux】ELF与动静态库的“暗黑兵法”:程序是如何跑起来的?
linux·运维·服务器·c++·vscode·ubuntu
ShineSpark1 小时前
C++面试2——C与C++的关系
c语言·c++·面试
繁依Fanyi1 小时前
ImgShrink:摄影暗房里的在线图片压缩工具开发记
开发语言·前端·codebuddy首席试玩官
卓律涤1 小时前
【找工作系列①】【大四毕业】【复习】巩固JavaScript,了解ES6。
开发语言·前端·javascript·笔记·程序人生·职场和发展·es6
无聊的小坏坏1 小时前
【C++】set、map 容器的使用
c++·stl
※※冰馨※※1 小时前
彻底解决QT5 中文编译不过问题
c++·windows·qt