C++中的类和结构为什么许多人用指针定义成员??
C++中的类和结构CLASSmin或者structmin使用时直接定义成minb,.之后使用的时候用b.类成员=。。。。多么清晰易懂,为啥许多人用min*b,去定义成员。...
C++中的类和结构
CLASS min 或者struct min
使用时直接定义成min b,.之后使用的时候用b.类成员=。。。。多么清晰易懂,为啥许多人用min*b,去定义成员。。。在稍微大的一点程序里,后面被指针搞得晕头转向,还得类型转换什么的。。。多麻烦。。。难不成就是为了提高程序效率! 展开
CLASS min 或者struct min
使用时直接定义成min b,.之后使用的时候用b.类成员=。。。。多么清晰易懂,为啥许多人用min*b,去定义成员。。。在稍微大的一点程序里,后面被指针搞得晕头转向,还得类型转换什么的。。。多麻烦。。。难不成就是为了提高程序效率! 展开
5个回答
展开全部
指针的确容易搞得晕头转向,不过它之所以这样做是有一定道理的。
1、多态的要求。
如果要使用同一接口,多态设计,那么就一定要使用基类指针。只有指针才能在实力化后动态的判断使用那个方法。
2、代码复用思考,有一些程序要设计成一段代码能氏裂处理多个事。用指针可以提高复用和灵活性。
3、内存考虑。在函数调用等一些问题上,使用指针可以减少临蚂拦时内存变量和复制
4、动态数组。因为不能确定数组个数,指针使用new来分闷核胡配可以根据运行时分配。
1、多态的要求。
如果要使用同一接口,多态设计,那么就一定要使用基类指针。只有指针才能在实力化后动态的判断使用那个方法。
2、代码复用思考,有一些程序要设计成一段代码能氏裂处理多个事。用指针可以提高复用和灵活性。
3、内存考虑。在函数调用等一些问题上,使用指针可以减少临蚂拦时内存变量和复制
4、动态数组。因为不能确定数组个数,指针使用new来分闷核胡配可以根据运行时分配。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
您说对了,为了提高效率,假如在你的程序当中,没有需铅此做要用到结构或者类来槐衡进行传参的话,那么就直接min b,像你说的这样用就好了,因为用指针的话多了一步间接寻址的过程,反而让程序运行时间更扒圆加长了(这个多了的时间,基本可以用ms为单位来计算)
但是有以结构或者对象来作为参数的函数时,应该用指针传递或者引用传递,假如是直接值传递的话,结构需要拷贝的时间,类则多了拷贝构造函数调用的时间,还要复制,最后可能还要调用析构函数,时间开销很大,一个函数调用10次的话,就10倍的增加,所以大部分都是直接用指针来替代,方便,简介,效率
但是有以结构或者对象来作为参数的函数时,应该用指针传递或者引用传递,假如是直接值传递的话,结构需要拷贝的时间,类则多了拷贝构造函数调用的时间,还要复制,最后可能还要调用析构函数,时间开销很大,一个函数调用10次的话,就10倍的增加,所以大部分都是直接用指针来替代,方便,简介,效率
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般的类或者结构定义以后的使用都会早尘是用到数据结构方面的知识,将他创建成表,栈,或者树来存储数据解决问题的,也可以直接用容器来存储类或者结构。
之所以定义成指针不是装高手故弄玄虚,其实是有必要,比如你要建一个学生成绩管理系统,那么在录入学生信息的时候就必须要定义一个学生类的指针,循陆袭禅环的动态分配内存,存入数据。然后再把数据装入需要的地方,或者在读取文件和存储文件的时候同理也需要指针。其还是指针没那么复杂,类指针就相当于普通的int指针一样,不要被繁琐的程序所吓到,编程序禅运就是怎么简单怎么来。
之所以定义成指针不是装高手故弄玄虚,其实是有必要,比如你要建一个学生成绩管理系统,那么在录入学生信息的时候就必须要定义一个学生类的指针,循陆袭禅环的动态分配内存,存入数据。然后再把数据装入需要的地方,或者在读取文件和存储文件的时候同理也需要指针。其还是指针没那么复杂,类指针就相当于普通的int指针一样,不要被繁琐的程序所吓到,编程序禅运就是怎么简单怎么来。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1. 提高效率
2. 节约内存
3. 其他关联例如容器 map什么的,无法支持你自定义的结困高缺构体,只支持指针汪辩。
4.个人习惯念巧
2. 节约内存
3. 其他关联例如容器 map什么的,无法支持你自定义的结困高缺构体,只支持指针汪辩。
4.个人习惯念巧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询