【Bug记录】operator->返回类型错误导致operator->调用不了

简介: 【Bug记录】operator->返回类型错误导致operator->调用不了

项目场景:

模拟list,出现operator->调用不了的情况,这是什么情况呢???


问题描述

这里我是明确写了operator->函数的:

但是却有下面报错:

原因分析:

这里有个前置知识:operator->的调用逻辑是,先访问operator->()函数拿到对应val值的地址,再拿着这个拿到的地址对这个地址->成员变量

如果此时返回值类型是T&,那么operator->就不能->成员变量了!因为能->成员变量的前提得是一个指针/地址。

这里碰巧我就写错了一个字符:


解决方案:

只需要把T&改为T*即可。


EOF

相关文章
|
5月前
|
存储 算法 编译器
【C++ 内存管理 重载new/delete 运算符 新特性】深入探索C++14 新的/删除的省略(new/delete elision)的原理与应用
【C++ 内存管理 重载new/delete 运算符 新特性】深入探索C++14 新的/删除的省略(new/delete elision)的原理与应用
147 0
|
存储 Kubernetes 监控
如何管理越来越多的 operator?OLM 给你答案
OLM(Operator Lifecycle Manager) 作为 Operator Framework 的一部分,可以帮助用户进行 Operator 的自动安装,升级及其生命周期的管理。同时 OLM 自身也是以 Operator 的形式进行安装部署。本文我们将来了解一下 OLM 的基本架构和安装使用。
如何管理越来越多的 operator?OLM 给你答案
|
2月前
|
编译器
【Bug记录】list模拟实现const迭代器类
【Bug记录】list模拟实现const迭代器类
|
2月前
|
编译器
【Bug记录】C2662:不能将this指针从const转换为非const
【Bug记录】C2662:不能将this指针从const转换为非const
|
2月前
【Bug记录】模板生成错误:不属于vector的成员
【Bug记录】模板生成错误:不属于vector的成员
|
11月前
|
JSON 小程序 JavaScript
小程序根据返回值的int类型渲染不同的状态
小程序根据返回值的int类型渲染不同的状态
130 0
|
5月前
|
编译器 C语言 C++
【C++基础】 --- C++相对于C新增bool类型变量
【C++基础】 --- C++相对于C新增bool类型变量
40 1
【C++】 --- 如果同时定义了两个函数,一个带const,一个不带,会有问题吗?
【C++】 --- 如果同时定义了两个函数,一个带const,一个不带,会有问题吗?
134 0
|
存储 Web App开发 安全
检查 malloc 函数返回内容的四个理由
检查 malloc 函数返回内容的四个理由
解决办法:对‘operator delete(void*)’未定义的引用
解决办法:对‘operator delete(void*)’未定义的引用
182 0