C++中的类和结构为什么许多人用指针定义成员??

C++中的类和结构

CLASS min 或者struct min
使用时直接定义成min b,.之后使用的时候用b.类成员=。。。。多么清晰易懂,为啥许多人用min*b,去定义成员。。。在稍微大的一点程序里,后面被指针搞得晕头转向,还得类型转换什么的。。。多麻烦。。。难不成就是为了提高程序效率!

指针的确容易搞得晕头转向,不过它之所以这样做是有一定道理的。
1、多态的要求。
如果要使用同一接口,多态设计,那么就一定要使用基类指针。只有指针才能在实力化后动态的判断使用那个方法。

2、代码复用思考,有一些程序要设计成一段代码能处理多个事。用指针可以提高复用和灵活性。
3、内存考虑。在函数调用等一些问题上,使用指针可以减少临时内存变量和复制
4、动态数组。因为不能确定数组个数,指针使用new来分配可以根据运行时分配。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-01-31
指针的确容易搞得晕头转向,不过它之所以这样做是有一定道理的。
1、多态的要求。
如果要使用同一接口,多态设计,那么就一定要使用基类指针。只有指针才能在实力化后动态的判断使用那个方法。
2、代码复用思考,有一些程序要设计成一段代码能处理多个事。用指针可以提高复用和灵活性。
3、内存考虑。在函数调用等一些问题上,使用指针可以减少临时内存变量和复制
4、动态数组。因为不能确定数组个数,指针使用new来分配可以根据运行时分配。
第2个回答  推荐于2016-03-24
您说对了,为了提高效率,假如在你的程序当中,没有需要用到结构或者类来进行传参的话,那么就直接min b,像你说的这样用就好了,因为用指针的话多了一步间接寻址的过程,反而让程序运行时间更加长了(这个多了的时间,基本可以用ms为单位来计算)
但是有以结构或者对象来作为参数的函数时,应该用指针传递或者引用传递,假如是直接值传递的话,结构需要拷贝的时间,类则多了拷贝构造函数调用的时间,还要复制,最后可能还要调用析构函数,时间开销很大,一个函数调用10次的话,就10倍的增加,所以大部分都是直接用指针来替代,方便,简介,效率本回答被提问者采纳
第3个回答  2012-08-13
一般的类或者结构定义以后的使用都会是用到数据结构方面的知识,将他创建成表,栈,或者树来存储数据解决问题的,也可以直接用容器来存储类或者结构。

之所以定义成指针不是装高手故弄玄虚,其实是有必要,比如你要建一个学生成绩管理系统,那么在录入学生信息的时候就必须要定义一个学生类的指针,循环的动态分配内存,存入数据。然后再把数据装入需要的地方,或者在读取文件和存储文件的时候同理也需要指针。其还是指针没那么复杂,类指针就相当于普通的int指针一样,不要被繁琐的程序所吓到,编程序就是怎么简单怎么来。
第4个回答  2012-08-13
1. 提高效率
2. 节约内存
3. 其他关联例如容器 map什么的,无法支持你自定义的结构体,只支持指针。
4.个人习惯