【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);
相关推荐
爱吃生蚝的于勒12 小时前
【Linux】进程信号的产生(一)
linux·运维·服务器·c语言·开发语言·数据结构·c++
写代码的【黑咖啡】12 小时前
Python中Excel文件的强大处理工具:OpenPyXL
开发语言·python·excel
索荣荣12 小时前
Java反射:从入门到实战的终极指南
java·开发语言
全栈软件开发12 小时前
php图形验证码生成系统源码 支持api接口调用 提供SDK 轻量级简单易用
开发语言·php
2401_8384725113 小时前
自定义操作符重载指南
开发语言·c++·算法
v_for_van13 小时前
单片机内存分配管理笔记
开发语言·c++·笔记·vscode·stm32·单片机·嵌入式硬件
W_a_i_T13 小时前
【Coding日记】菜鸟编程C语言100例——第三题⚠️
c语言·开发语言·经验分享·算法·菜鸟编程
weixin_4521595513 小时前
多协议网络库设计
开发语言·c++·算法
十五年专注C++开发13 小时前
浅谈C++插件机制的设计要点以及实现方案
开发语言·c++·系统架构·插件机制
Hello World . .13 小时前
C语言printf: VT100 终端控制码
c语言·开发语言·jvm