注册 登录
编程论坛 C++教室

C++是不是最好不用数组、宏、指针啊

墨清扬 发布于 2012-02-11 14:57, 1860 次点击
不记得在哪看的了,C++建议不要用数组、宏、指针(震惊)。可是我觉得这三者都很好,宏就算了,指针的功能那么强大不用了如何代替?用vector代替数组的话,听别人说会比数组慢?
9 回复
#2
rjsp2012-02-11 16:04
半吊子书看多了吧
“不要用”和“不要滥用”是有本质区别的,就如同“不许吃饭”和“不许吃一吨饭”的差别一样
#3
墨清扬2012-02-11 19:23
回复 2楼 rjsp
那大概是我记错了……请指点一下,什么时候不要用
#4
pangding2012-02-11 22:01
回复 3楼 墨清扬
经验这种东西,不是大师是总结不出来的。

你能在不借助任何工具的情况下,总结出“的”、“地”、“得”三字的共同点与区别吗?什么时候该用哪个?
虽然很多人靠语感(经验)很可能能用对指定的字,但中文系的学生,可能也答不上来我问的这个问题。
#5
墨清扬2012-02-12 11:24
回复 4楼 pangding
那举几个例子成吗,好让我有点感觉
#6
BianChengNan2012-02-13 11:06
楼主这怎么可能呢?
顶二楼
半吊子书看多了吧
“不要用”和“不要滥用”是有本质区别的,就如同“不许吃饭”和“不许吃一吨饭”的差别一样
能用引用就少用指针可以理解,不用指针纯粹就是胡扯。
#7
bardon_20092012-02-13 13:12
编程序是解决问题的,只要能编程解决问题,用什么不用什么,都不是问题。
#8
smallmoon5212012-02-13 13:22
我觉得,这东西初学时都要用一下,自己去体会在哪些情况下这些东西不适合,用了反而会增加麻烦
经验都是前人总结出来的,后人的确是学习照做了,但不懂其所以然,也是没用的
#9
pangding2012-02-13 21:57
回复 5楼 墨清扬
宏确实不太常用了。用 const常量 和 内联函数,一般可以取代以前宏能做的事情。
不过像类似 #ifndef #define 之类的预处理问题,还是得用宏。

至于 数组 和 指针,你什么时候想用都可用。c++ 依然禀承了 c 的思想,把一切的控制权交给程序员。只要你觉得该用,用了比不用方便的地方,你都应该大胆的使用。
如果用完,用烂了。吃一暂长一智就是了,学习阶段很正常。经验丰富了之后,也许你会变得偏保守,不过依然可以“该出手时就出手”。


至于有不提倡用这样的说法,主要是确实另有一些语言,没有数组指针的概念,也做得很成功。
不过它们是它们,C 是 C。我觉得凡是倡导不用的,都是邯郸学步的蠢蛋。
#10
墨清扬2012-02-14 20:07
那我就放心了,谢谢各位哈!
1