【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);
相关推荐
zmzb01031 小时前
C++课后习题训练记录Day104
开发语言·c++
honiiiiii2 小时前
SMU winter week4
c++
zmzb01032 小时前
C++课后习题训练记录Day105
开发语言·c++·算法
wjs20242 小时前
Vue3 条件语句
开发语言
_codemonster2 小时前
JavaWeb开发系列(六)JSP基础
java·开发语言
闻缺陷则喜何志丹2 小时前
【拆位法】P8743 [蓝桥杯 2021 省 A] 异或数列|普及+
c++·蓝桥杯·位运算·拆位法
fpcc2 小时前
跟我学C++中级篇——Concepts的循环依赖
c++·模板和元编程
Web打印3 小时前
Phpask(php集成环境)之16 怎样彻底停用一个网站
开发语言·php
临水逸3 小时前
飞牛fnos 2025 漏洞Java跨域URL浏览器
java·开发语言·安全·web安全
H Corey3 小时前
数据结构与算法:高效编程的核心
java·开发语言·数据结构·算法