博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计类时需要注意的6个地方
阅读量:4700 次
发布时间:2019-06-09

本文共 632 字,大约阅读时间需要 2 分钟。

1.在类中声明构造函数,如果构造函数的参数需要初始化,最好在函数声明的时候使用构造函数独有的初始化方式,不要在函数体内再进行初始化,这样可以提高程序的运行效率,具体如下:

class person{Private:   Int age,height; Public:   Person(const int &a,const int &h) : age(a) , height(h) {}      };

 

2.数据都放在private里面,这也体现了c++的三大特性之一:封装

3.参数能通过引用传递就不要用值传递。因为值传递的方式传进来的是一个特别大的数,会占用很多的栈空间,导致内存消耗过高。这里内存消耗过高在单一调用一个函数可能还不是很明显,可是如果使用了递归,编译器将会对参数一直进行压栈的操作,使用值传递很有可能就会导致堆栈溢出了(这里只是我的猜测,下次要写个代码验证一下)。

4.返回值能用引用就不要直接返回当前对象

5.如果参数在函数内不可以被改变,那么这个函数就应该声明为常量成员函数。这么做的目的是完善自己设计的接口,别人在调用这个类的成员函数时加了const,而实际声明这个函数时又没有告诉别人这个函数的参数是不可以改变的,那么就会造成二义性,编译的时候就会报错。

6.如果某一个参数在函数内的值不会被改变,那么将这个值使用const修饰。

 

转载于:https://www.cnblogs.com/leoncumt/p/10367606.html

你可能感兴趣的文章
使用Grunt启动和运行
查看>>
哈希,最短路径,堆,排序,动态规划
查看>>
系统测试中需要注意的点
查看>>
Elasticsearch TermQuery 详解
查看>>
一个困扰了我N久的bug , android.enableAapt2=false 无效
查看>>
查看客户端的IP地址,机器名,MAC地址,登陆名等信息
查看>>
移动端经常遇到的小bug
查看>>
网络&热恋NSURLConnection代理及GET¥POST请求
查看>>
SshTerminal
查看>>
MySQL常用函数
查看>>
安装cocoapods
查看>>
Ubuntu安装搜狗拼音教程
查看>>
Happy Number
查看>>
Sqlserver 系统视图简单说明
查看>>
【摘录】PHP异步调用实现方式
查看>>
php缓存机制
查看>>
bzoj2049 线段树 + 可撤销并查集
查看>>
sql语句---存在即更新,否则insert
查看>>
cookie机制、session机制
查看>>
BZOJ 3787: Gty的文艺妹子序列
查看>>