boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 来问一个关于smart pointer的弱问题
相关主题
谁给改一个线程安全的smarter pointer类
C++ Q93 - Q95
请教operator const char*() 的问题
请帮忙看道题 c++ operator overload
请问一道c++题目
C++ Singleton的实现
1道brianbench 的题 c++
C++ Q48: illegal operation (C33)
问个c++题
C++ 面试题
相关话题的讨论汇总
话题: operator话题: pointer话题: return话题: smart
进入JobHunting版参与讨论
1 (共1页)
r***c
发帖数: 95
1
大家都是大牛,菜鸟来问一个弱问题。
Smart pointer implementation里, dereferencing operator 和 member selection
operators是这样定义的。
T& operator* () const // dereferencing operator
{
return *(m_pRawPointer);
}
T* operator->() const // member selection operator
{
return m_pRowPointer;
}
想知道,因为什么,前者returned by reference, 后者 returned by pointer呢?能
不能前者return-by-pointer, 后者return-by-reference呢?
s****a
发帖数: 794
2
仔细想想引用和指针用的时候有什么区别
r***c
发帖数: 95
3
谢谢回复!
引用使用时无需解引用(*),指针需要解引用。
第一个返回的是reference;否则还需要继续dereference。
第二个返回的是指针,因此可以直接接->, which is equivalent to (*ptr).。
是这个意思么?
s****a
发帖数: 794
4
反正我觉得是这个意思 换一换的话就没法用了。。。

【在 r***c 的大作中提到】
: 谢谢回复!
: 引用使用时无需解引用(*),指针需要解引用。
: 第一个返回的是reference;否则还需要继续dereference。
: 第二个返回的是指针,因此可以直接接->, which is equivalent to (*ptr).。
: 是这个意思么?

1 (共1页)
进入JobHunting版参与讨论
相关主题
C++ 面试题
又问几个c语言编程的题目
不用暴力,这道题有没有优化解
请教2道c++的题 (转载)
C++: 如何对const data member做assignment?
c++ new的一个问题
这道题是选A 吗?
怎么准备一些hardcore C++的interview
这道题怎么做的?
CareerCup question
相关话题的讨论汇总
话题: operator话题: pointer话题: return话题: smart