C++性能系列之函数与函数参数的几个原则

C++的几个原则

  • 除非利用参数给调用者传递数据,参数一般都增加const标识
  • 函数返回值类型一般都增加const标识,指针类型的函数返回值一般不增加指针自身只读的标识符
  • 原则上函数函数值类型不返回指针类型,只返回结构体和普通基本数据类型
  • 内存管理的原则是谁申请谁维护谁释放,指针传递的原则是谁需要谁复制,调用者不替被调用的函数保留指针针向的内存。
  • 函数的返回值一般不返回复杂数据结构的对象,而是通过参数传递复杂数据结构对象的指针。同样的道理,被调用函数不会给调用者申请对象的内存。
  • 克隆的本质是在不改变私有成员的权限的前提下获取私有成员的值。成员函数是共用的。它的作用域因调用它的对象的不同而不同。
  • 成员函数的地址空间是全局的,谁都能通过地址检索得到它的入口,不能直接调用的问题在于它的作用域。成员函数访问的局部变量不是它申请的内存,不同的对象调用同一个成员函数处理同一个名称的成员变量,被处理的变量是不同的。
  • 克隆的理想模型是:抽象层管理实现层克隆的对象列表仍然不需要知道实现克隆方法的具体类型。

猜你喜欢

转载自blog.csdn.net/caoshiying/article/details/79221933