类 中下的一些碎片知识点

判断下面两个函数是否能同时存在
void Print();
void Pirnt() const

答:能同时存在,因为构成函数重载(注意函数的返回值不同是不能构成函数重载的)。

const 对象能调用 非const 成员函数吗

答:不能,因为权限被放大了,(权限只能平移或缩小)
非const 对象 可以调用const成员函数吗?

答:可以,因为权限是可以缩小的
const成员函数内可以调用其他非const成员函数吗?

答:不能。因为权限被放大了
非const成员函数内可以调用其他的const成员函数吗?

答:可以,权限缩小了

问?如果我不是类里的成员函数 但是我想访问内里的成员变量 那该咋办?

这个时候我们就要用到:友元声明

看例子:

c 复制代码
class Date
{
  public:
   friend void operator<<(ostream& out, const Date& d);
  

   private:
   ...................
};

friend + 函数的声明

就像:
friend void operator<<(ostream& out, const Date& d);
友元函数的位置是不影响的,在pubilcprivate 都行,

相关推荐
hPw0eKIqD7 小时前
C++ 模板参数推导问题小记(非推导上下文)
开发语言·c++
程序员爱德华7 小时前
Python与C++:异同点对比
c++·python
888CC++10 小时前
C语言与C++的区别:从面向过程到面向对象
java·c语言·c++
Darkwanderor12 小时前
Linux系统编程实战项目:模拟实现shell
linux·c++
himobrinehacken12 小时前
揭秘Windows程序启动的神秘之旅
c++·安全
库玛西13 小时前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记
Byron Loong14 小时前
【C++】重定向是什么
开发语言·c++
hansang_IR14 小时前
【题解】LC:Z 算法(Z Algorithm)
c++·算法·字符串
霍霍的袁16 小时前
【C++】模板从入门到进阶(函数模板 + 类模板 + 特化 + 分离编译)
开发语言·c++·visual studio
海清河晏11116 小时前
Qt 实战:信号与槽+事件系统
开发语言·c++·qt