• 学前教育
  • 小学学习
  • 初中学习
  • 高中学习
  • 语文学习
  • 数学学习
  • 英语学习
  • 作文范文
  • 文科资料
  • 理科资料
  • 文档大全
  • 当前位置: 雅意学习网 > 理科资料 > 正文

    程序设计中混合使用VC/VB编程的研究探析_VC++ C#混合编程

    时间:2019-05-16 03:16:08 来源:雅意学习网 本文已影响 雅意学习网手机站

      摘 要: 随着科学技术不断的发展,程序设计变得越来越重要,而程序研究也变得越来越重要。原有单个编程数据结构表达相对困难,再加上处理周期难等特点,无法保证程序设计有序进行。而使用混合编程,尤其使用VC/VB混合编程不仅能有效提高程序执行效率,同时也能使程序编制更具灵活性。为使VC/VB混合编程更好满足程序设计需求,应该对VC/VB混合编程相关内容进行分析。主要从混合编程混合编程概念及VC/VB混合编程特点、VC/VB混合编程方法、VC/VB混合编程使用时应该注意的问题等方面出发,对程序设计中混合使用VC/VB编程进行相应分析。
      关键词: 程序设计;混合使用;VC/VB编程
      VC/VB混合编程技术在程序设计中使用,不仅能开发出最佳界面和外围处理程序,同时也能缩短周期、嵌入汇编语言更好的进行底层操作。而要想使VC/VB混合编程更好的发挥作用,有必要对VC/VB混合编程特点、方法及应该注意的问题进行相应分析。如何更好的对程序设计中混合使用VC/VB编程进行分析,已经成为相关部门值得思索的事情。
      1 混合编程概念及VC/VB混合编程特点
      1.1 混合编程概念
      所谓的混合编程就是用两种或两种以上程序设计语言开发应用程序的过程。就目前来看,计算机程序设计语言种类较多,但是这些程序语言仍有不足之处,一种程序语言在实际运行过程中是不能更好满足项目的需求,而混合编程除了能发挥多种语言优势,实现代码共享、缩短开发周期外,还能实现多人协作,共同完成一个项目。
      1.2 VC/VB混合编程特点
      VB具有简单易学且界面开发能力强等优势,受广大工程技术人员青睐。但是其在实际应用过程中因执行速度较慢,单独使用不能更好满足项目需求。VC是在VB基础上进行研究的,其代码简洁高效程度远高于VB,但是VC学习周期相对较长且用起来不方便,不能将自身优势充分的发挥出来。将VB编程与VC编程混合起来,能将二者优势充分发挥出来,在一定程度上能提高设计程序的执行性效率和程序编制的灵活性。
      2 VC/VB混合编程方法
      2.1 对直接法进行分析
      在用VC编程进行编写时,其是可以用具体功能来执行文件的,也可在此基础上用VB中的SHELL函数来执行。这种方法相对简单,但是在实际执行过程中,这种编程的灵活性和可交互性较差。而VB编写中的程序段只能简单的启动VC编程程序段并使其运行,却无法对编写的程序段进行相应控制,再加上VB和VC编程数据交换困难,使得这种方法很少在实际中应用。
      2.2 对动态链接库法进行分析
      动态数据库技术是VC/VB编程中重要方法之一,其动态链接库是可以执行相应模块的,但是其却没有堆栈。因此,动态链库还有在函数程序环境下运行才能实现。动态链库在有扩展了应用程序特性是因为动态链接库能以动态形式被装入地址并进行控制,使用程序时应该先将代码装入,并以此为依据来执行相应操作。同时动态链接库也能节省内存,当两个或是多个应用程序同时使用一个动态链接库时,只需在动态链接库页面中放入RAM一次,就能实现应用程序不同页面共享。动态链接库除实现页面共享外,也能实现资源共享。动态链接库中的资源主要有对话框模板、字符串、括图标和位图等。
      2.3 对ActiveX控件法进行分析
      ActiveX控件作为执行组件,其是在MicroSoft中的COM技术和OLE技术基础上进行设计的。这种控件设计之初就是为了将其更好嵌入窗口或Web页来实现设备功能。ActiveX控件法与一般控件法使用是相似的,但也有不同之处。其最大的不同就是ActiveX控件能在Web中使用。ActiveX控件在实际应用过程中,与VB和VC语言是可以相互交流。在实际交流过程中,ActiveX控件和客户应用程序之间可以通过方法、属性、时间等方式实现通讯。其中方法是以空间形式将应用程序或函数展现给客户,允许控件内部函数;属性一般指以空间形式将内部可供使用或者修改数据提供给客户,并通过出发事件来调用客户应用程序的事件函数进行处理。在实际操作过程中,可以先启动系统,并选用菜单项创建新项目。正常情况下,会选用MFC ActiveX Control W izard项来产生ActiveX控件,而用这种方式在一定程度上会使空间最终代码数量变小。毕竟ActiveX控件对象是从COM对象出发的,再加上其无法使MFC类库功能发挥其应有作用,只有使用以CO为基类的控件,才能更好的实现OLE控件对象特性、方法、属性及时间等,并以此为依据按照系统给出信息完成相应工作。
      2.4 对混合链接法进行分析
      混合链方法就是VC和VB采取一样编译链接法,把之前的程序编译成本地码。一般VB会将系统中编译程序文件以OBJ文件形式分别编译出来,之后再用连接程序方式将其与EXE文件链接。整个过程是自动的,当相应链接完成之后,VB系统会将OBJ上的文件删除。而VC与VB编译器属于同一个程序,要想更好的实现VC链接,在连接程序链接输出EXE前,就应该对OBJ文件进行相应处理,并将VC编译的OBJ文件和VB编译的OBJ文件链接到同一个EXE文件中。最终通过CMD窗口中的键入命令来生成EXE文件并运行该文件,在此基础上点击按钮,当窗口上显示相应数字时,则证明VB程序中的Test函数为VC中定义的Test函数。
      3 VC/VB混合编程使用时应该注意的问题
      3.1 应该注意内存泄露问题
      动态数据库作为实现混合编程方法之一,常会出现内存泄露问题。在动态链接库中,可以将设计语言称为服务语言,调用动态链接库程序中的设计语言可以称之为宿主语言。了解两种语言概念后,在实际混合编程中,还应该对这两种函数进行调用约定、参数数据类型和传递方式进行兼容,也要保证需要和管理机制一致。毕竟需要与管理机制不一致,易引起内存泄露问题。一旦出现内存泄露问题,释放组元素内存就会被占用,宿主语言使用的指针也无法指向正确结果,而释放内存,   再次调用函数时,上次服务语言中分配内存也不能正常使用。毕竟VC编写的是矩阵相乘的函数,在VB生成动态链接库中调用。为了保证程序设计有序进行,可以在宿主语言中操纵服务语言,并对服务语言中的分配内存进行释放。也可以以宿主语言中服务语言需要的内存量为依据,使宿主语言进行动态内存分配。
      3.2 应该注意协调处理机制问题
      使用动态链接库方法进行混合编程时,常会出现异常状况,出现这一状况主要是宿主语言和服务语言异常处理机制不同而引起。为了避免这一状况发生,应该保证宿主语言和服务语言处理机制一致性,并以异常类型为依据进行相应处理,以保证程序有序运行。在协调处理中,应先用函数返回值方法和填充全局异常结构来对异常类型、来源和描述进行分析,待确定异常状况后对其进行相应处理。在处理过程中,可以将服务语言中出现的异常状况传递给宿主语言,并用宿主语言处理机制来确定相应处理方法。一般VB为宿主语言,而VC为服务语言。
      3.3 应该注意控件问题
      正常情况下,ActiveX控件和一般控件使用方法是相似的,但是其在VB中使用时,仍应注意相应问题,尤其是VB与VC指针问题,毕竟指针结果正确与否直接关系着程序设计进程。ActiveX控件在VB中使用时,应该先将组数声明为VARLANT,在此基础上再将组数传递给ActiveX控件,以保证VB与VC指针结果正确。
      4 结束语
      VB编程与VC编程在程序设计中各有优势和劣势,单独使用任何一种程序都不能满足程序设计需求。而将VB编程与VC编程混合在一起使用,能使二者优势互补,不仅能提高程序运行效率,同时也便于操作,也能保证程序设计工作有序进行。
      参考文献:
      [1]何明昌,基于.NET的混合语言编程原理及实现[J].电脑知识与技术(学术交流),2007(14).
      [2]刘小俊、涂春霞、宋仲康,VB和VC混合编程技术应用实例[J].可编程控制器与工厂自动化,2006(06).
      [3]詹白勺、梅顺齐、陈小兰,利用VB与VC混合编程实现数字印花的图像处理[J].现代制造工程,2007(01).
      [4]李湘江,VB与VC混合编程技术的研究[J].计算机应用与软件,2008(10) .
      [5]柏晟,VC++与MATLAB混合编程的方法研究与实现[J].电脑开发与应用,2006(04).
      [6]朱荟桥,利用动态链接库实现C++与VB的混合编程[J].信息技术,2010(12).
      [7]黄嵩、周清松,VB和VC++DLL实现注册模块的混合编程[J].思茅师范高等专科学校学报,2011(03).

    推荐访问:探析 程序设计 混合 编程

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章