【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);
相关推荐
m0_738120721 分钟前
AI安全实战系列(四):Lab04 Multi-Agent——多智能体攻击分析
服务器·开发语言·人工智能·安全·网络安全·语言模型
Irissgwe11 分钟前
算法之二分查找
数据结构·c++·算法·二分查找
Mr__Miss15 分钟前
Java 随机数生成器选型指南:Random、ThreadLocalRandom 与 SecureRandom
java·开发语言·python
Risehuxyc16 分钟前
PHP数据类型
开发语言·php
Wang's Blog20 分钟前
Go-Zero基础入门5: 探究go-zero如何基于gRPC扩展客户端
开发语言·后端·golang·go-zero
zh_xuan21 分钟前
c++ span的用法
开发语言·c++·span
caimouse31 分钟前
KiSystemStartupBootStack 函数分析
开发语言·reactos
薛定猫AI37 分钟前
【深度解析】动态多智能体团队:并行规划、开发与验证的 Python 实战
大数据·开发语言·python
t-think44 分钟前
一起think C++:C++基础篇(一)—— namespace、IO、缺省参数与函数重载
c++
持力行8 小时前
从C struct到C++中的class
c语言·c++