ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 网络编程 >> C/C++教程 >> 解耦利器function message bus

解耦利器function message bus(1/5)

来源:网络整理     时间:2018-07-21     关键词:

本篇文章主要介绍了" 解耦利器function message bus",主要涉及到方面的内容,对于C/C++教程感兴趣的同学可以参考一下: 需求1能把模版函数和一个key注册起来以便后面使用,能把参数不同的函数和一个key注册起来以便后面使用。 c++中没有这样的一个容器可以存放模版函数和参数类型不...

需求1

能把模版函数和一个key注册起来以便后面使用,能把参数不同的函数和一个key注册起来以便后面使用。
c++中没有这样的一个容器可以存放模版函数和参数类型不同的函数。

需求2

对象A和对象B相互调用,耦合性很强,如何消除这种耦合性;
对象A和对象B没有任何关系,但A希望用B里面的方法,但二者又不适合直接关联起来。

如果你碰到这两个需求中的任何一个,那么你就需要function message bus。

作用

1.作为一个万能的函数注册器,可以注册任意类型的函数(除了重载函数);

2.解耦对象之间的调用关系

例子

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

    structperson{

        std::stringfoo(constint&a){

            returnstd::to_string(a);

        }

    

        voidfoo1(constdouble&a){

            std::cout<<a<<std::endl;

        }

相关图片

相关文章