在设计程序时,无论是界面或是后台代码,我们通常都想留给用户一个较为简单的接口。而我在参与封装语音卡开发函数包的时候,发现各种语音卡的底层函数的接口都是各种整形变量标记值,使用起来极为不变。于是就理解了前辈所写的代码中,利用XML构建反射表机制的初衷。下面我就以某一种语音卡所能兼容的语音格式为例,将反射表机制的原理做个示范。

      语音卡的底层开发函数中,放音和录音函数的参数都是很多而且不易理解和记忆的。以语音格式为例,假如a率的标记值是6,u率的标记值是7,……,一般所能兼容的语音格式为10多个。如果我们选用整形变量来做标记语音格式的参数,那么我们大概就有两种选择:1.要么我们把这种对应关系生记下来,2.要么我们在调用函数时去查一下对照表,而这两种方式,都需要做不必要的投入。

      这时反射表的优势就表现出来了,下面看看例子:

//先做一个语音格式的枚举,方便用户调用:

    }

 

//这是一个语音格式类,用于填充语音格式对照表

        }

 

//编写一个方法,用来演示语音格式对照表的使用,具体使用方法类似但要视情况而定

 

        }

 

//最后贴出测试用的Main函数

 

    }

 

//最后给出测试用的XML文件:

 

>

 

 //输出结果:

用户选定项:a率;该选项的配置值为:6

      这种处理方法,可以在许多方面得到应用。例如在语音卡的事件处理过程中,诸如外拨事件、放音事件及录音事件等操作,在这种过程性的事件响应中,都需要利用反射机制将通道状态来输出。

 

 

 

 

 

      

相关文章:

  • 2022-02-26
  • 2022-12-23
  • 2022-12-23
  • 2021-12-02
  • 2021-07-18
猜你喜欢
  • 2021-08-14
  • 2022-01-08
  • 2022-02-02
  • 2022-12-23
  • 2022-03-07
  • 2022-12-23
  • 2021-05-15
相关资源
相似解决方案