代码优化方式一

简介: 代码优化方式一

原始方式:

B.h

class B
{
};

C.h

#include "B.h"
class C
{
public:
  C(B* obj) { this->m_obj= obj; }
private:
  B* m_obj;
};

分析:C强依赖于B,有耦合性,可以想办法分离B和C的依赖关系。

解决方案:利用C++的多态特性,在B类和C类之间只存放各自的子类对象的父类指针,解耦类B和类C的联系,避免相互依赖。实现方式如下:

A.h

class A
{
};

B.h

#include "A.h"
class B: public A
{
};

C.h

#include "A.h"
class C
{
public:
  C(A* obj) { this->m_obj= obj; }
private:
  A* m_obj;
};

main.cpp

int main()
{
  A* a = new B();
  C c(a);
}


相关文章
|
4月前
|
前端开发 Java C++
每个前端都应该掌握的7个代码优化的小技巧
每个前端都应该掌握的7个代码优化的小技巧
|
4月前
在代码优化过程中,常见的错误和bug包括以下几点
在代码优化过程中,常见的错误和bug包括以下几点
|
4月前
|
NoSQL Java Redis
后端接口性能优化分析-程序结构优化(上)
后端接口性能优化分析-程序结构优化
167 0
|
9天前
|
前端开发 JavaScript API
前端代码优化方法
前端代码优化方法
6 0
|
3月前
|
算法 程序员 PHP
编写魅力十足的代码:优化可读性、维护性和性能的关键
本篇汇总了平时在工作开发中常遇到的业务逻辑的优雅写法,也汇总了自己还是新人时,拿到一个业务不知道怎么下手的痛点,依稀记得那时候总感觉自己写的代码不规范。 写完之后,感觉还是美好的,又学到东西了。
|
6月前
|
缓存 Java 编译器
探究Java方法的优化与最佳实践:提升性能与代码可维护性
探究Java方法的优化与最佳实践:提升性能与代码可维护性
|
7月前
|
测试技术
代码为啥不能过度优化
代码为啥不能过度优化
38 0
|
9月前
|
Java 编译器 应用服务中间件
代码开发优化细节
带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,具体参见Java运行期优化。此举能够使性能平均提高50% 。
188 2
代码开发优化细节