C++为什么会有指针的指针这个东西?

Timor君 发布于 2012/10/01 08:05
阅读 2K+
收藏 0

有人能举个例子说明在某种情况下必须用指针的指针吗?

加载中
1
mallon
mallon
指针本身也是数值,也需要存在一个地方啊
0
fromdtor
fromdtor
int main(int argc,char **argv),the second para is what you want.
fromdtor
fromdtor
@wowo 哦,刚才输入法坏了,现在好了!
wowo
wowo
不能说汉语么,非要这么高端?
0
no_way
no_way
就像你会用到多维数组一样
0
asdfsx
asdfsx

最简单的就是字符串数组嘛

0
Yisen
Yisen
字符串数组。 一个数组,里面存放的元素是指针。表示这个数组的就是指针的指针
0
刘地
刘地
和多维数组差不多,不过我建议尽可能的用指针的引用代替,如果可以的话。
0
小耶果
小耶果
几乎所有东西都有迭代概念.比如你有爸爸,为何会有爸爸的爸爸这样的存在,孩子的孩子,推理到语言,结构的结构,变量的变量,指针的指针,语言的语言...
0
姑妄听之
姑妄听之

历史遗留问题。

Java,C#等等新的语言,充分证明了,在使用语言这个层次,不直接使用指针这个概念完全没有任何问题。

这东西就像说话。有些词儿你一辈子不用也是完全没问题的。用了的话,有时候会更方便些而已。

cut
cut
java,c#的类其实都是指针好不好,不然要实现icloneable之类的接口做什么,只是用的时候不需要指针管理而且,内存管理全部交给托管的虚拟机,平时不怕出空指针那样的问题而已,并不是没有指针。C#是有指针类型的,不要首先声明不安全。其实C++你是蛋疼的话也可以这么自己搞个内存池来管理内存,所有分配的对象用引用类型,玩起来跟那个差不多。
小耶果
小耶果
不是历史遗留问题而是语言的包装问题.把指针隐藏了让你看不见摸不着甚至让你一辈子都不知道有指针这个东西.但在底层指针无处不在.上层和底层从目前的发展来看完全是二个世界.
ckh
ckh
本身C#里面也是可以使用指针的
Yisen
Yisen
更新的语言Go里可是有指针的噢。灵活,高效,安全的平衡点
0
b33d8041
b33d8041

引用来自“chrisg”的答案

历史遗留问题。

Java,C#等等新的语言,充分证明了,在使用语言这个层次,不直接使用指针这个概念完全没有任何问题。

这东西就像说话。有些词儿你一辈子不用也是完全没问题的。用了的话,有时候会更方便些而已。

是没问题,完全可以引用、引用。
但有些场合(嵌入式)不得不用指针

中山野鬼
中山野鬼
回复 @远山如此 : 因为嵌入式更要求软件贴合硬件特性。更高级的语言屏蔽了硬件特性,所以通常用C,其实硬件执行中,到处都是指针,C不用指针,如何更贴合呢?哈。
b33d8041
b33d8041
回复 @远山如此 : 压榨每一比特的空间。
Timor君
Timor君
为什么嵌入式必须用指针呢
0
中山野鬼
中山野鬼

引用来自“chrisg”的答案

历史遗留问题。

Java,C#等等新的语言,充分证明了,在使用语言这个层次,不直接使用指针这个概念完全没有任何问题。

这东西就像说话。有些词儿你一辈子不用也是完全没问题的。用了的话,有时候会更方便些而已。

JAVA,C#不用指针,不代表其他语言可以不用指针。这如同,发现饭在桌上,所以认为不需要耕田一样。JAVA ,C#这类不需要用指针的语言,也意味着不需要你知道数据实际存储的位置。系统会帮你做掉,当然不能保证质量。系统帮你做的(包括环境不单单说OS),不代表不需要设计和开发,无非JAVA,C#无法开发和不需要开发而已。
返回顶部
顶部