首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
C++动态数组的实现与重用   总被引:2,自引:0,他引:2  
数组是应用程序中经常要用到的一种数据结构。为解决C++定义后的数组不能改变其大小的情况,根据软件重用的思想,给出了用函数模板、动态数组类和数组类模板生成C++动态数组的方法,并对这些方法在代码重用方面进行了比较。文中主要给出了动态生成二维数组的函数模板、动态数组类和数组类模板的定义,以及部分成员函数和运算符重载函数的实现代码或算法。以动态生成二维整型数组,进行矩阵的加法运算为例,给出了使用方法。应用文中所给的方法,能满足应用程序中动态定义一维和二维数组的需要。  相似文献   

2.
陈凤祥  李汪根 《微机发展》2010,(2):79-82,86
数组是应用程序中经常要用到的一种数据结构。为解决C++定义后的数组不能改变其大小的情况,根据软件重用的思想,给出了用函数模板、动态数组类和数组类模板生成C++动态数组的方法,并对这些方法在代码重用方面进行了比较。文中主要给出了动态生成二维数组的函数模板、动态数组类和数组类模板的定义,以及部分成员函数和运算符重载函数的实现代码或算法。以动态生成二维整型数组,进行矩阵的加法运算为例,给出了使用方法。应用文中所给的方法,能满足应用程序中动态定义一维和二维数组的需要。  相似文献   

3.
武丽娟 《福建电脑》2010,26(7):204-205
数组作为C语言中构造数据类型的一种,是c语言中比较复杂的数据类型之一。文章通过介绍数组、数组变量的概念以及数组类型,结合具体实例分析,以便于掌握数组的使用方法。  相似文献   

4.
基于分支混淆算法的符号执行技术   总被引:1,自引:1,他引:0  
符号执行是静态分析中的一项常用技术,数组元素混淆问题是限制符号执行本身性能的关键因素之一。通过分析数组混淆实质,提出了一种分支混淆算法,利用边混淆边符号执行的策略,可以处理较为复杂的数组问题。该策略使用实时的约束求解,及时地剪除不可达的混淆分支。结合符号执行和约束求解技术,开发了基于分支混淆算法的工具原型ASym。初步实验表明,利用分支混淆算法可以处理具有分支结构的数组混淆问题,避免延迟替换出现的数组语义误差,且在很大程度上缩减了分支数量,提高执行效率。  相似文献   

5.
李彬  翟娟  汤震浩  汤恩义  赵建华 《软件学报》2018,29(6):1544-1565
本文提出了一个基于抽象解释框架自动合成数组程序不变式的方法.它能够分析按照特定顺序访问一维或者多维数组的程序,然后合成不变式.该方法将性质(包括区间全称量词性质和原子性质)集合作为抽象域,通过前向迭代数据流分析合成数组性质.本文证明了该方法的正确性和收敛性,并通过一些实例展示了该方法的灵活性.我们开发了一个原型工具.该工具在各种数组程序(包括Competition on Software Verification中的array-examples benchmark)上的实验展示了方法的可行性和有效性.  相似文献   

6.
陈继锋 《计算机科学》2008,35(7):274-276
提出了一种新的带数组和循环的路径测试数据自动生成的方法.该方法只考虑数组中与路径中谓词函数有关的数组元素,将循环中的同一变量名在每一次执行时用不同的变量参数来替代,从而较好地解决了路径中数组循环有效处理的问题.为有效、简单地自动生成测试数据,建立了谓词函数关于输入变量的线性约束系统.当谓词函数为线性表达式时,不需要计算其线性算术表示,仅计算非线性函数谓词函数的线性算术表示,且不需计算路径中的谓词片和确定输入依赖集,以及构造谓词函数关于输入变量增量的线性约束系统.理论分析和实例验证该方法具有简单、直观、有效且计算量小等特点.  相似文献   

7.
控件是可视化开发工具的重要对象之一。在程序设计时通常会遇到具有相同性质的事件过程,如果为每个控件分别编写一段事件过程,则显得十分不经济且结构不合理。在面向对象的程序设计中可采用将多个相同的控件定义为一个控件数组,这个控件数组内的每一个控件都可以共享程序代码。这不仅减少了开发人员重复性劳动而且提高了程序的可读性。通常建立控件数组方法有两种:第一种是在设计阶段时建立,属于静态方式;另一种是在执行阶段,动态地建立控件数组,也即在程序执行时建立。为了避免内存的浪费常采用动态建立控件数组,就是在程序模块(module)内,先声明一个空的控件数组,等到要使用该控件数组时,再重新声明要使用的控件数组元素或数目。控件数组可以动态生成和释放;并且控件数组对属性具有相同控制。动态生成和释放控件数组是在运行时,用Load和Unload语句添加和删除控件数组中的控件。  相似文献   

8.
数组是程序设计中最常用的数据结构.教组可分为数值数组(整数组,实数组),字符数组以及指针数组和结构数组.本文将各种类型的数组以实例进行了分析说明.  相似文献   

9.
在编写Java程序时,数组是常用的一种数据类型,然而在实际使用时有许多不便之处.为此,文章讨论了代替Java传统数组的动态数组的设计及实现过程,并举例说明了动态数组类的使用方法.  相似文献   

10.
深入探讨了多领域物理系统统一建模语言Modelica数组机制的特点,研究并解决了类型检查、下标处理、数组运算、方程生成等数组机制的关键技术,提出了基于树型结构的数组运算。在MWorks系统下实现了配套数据结构及算法,详细阐述了从数组声明、语义解析直到生成平坦化方程的整个过程,完整实现了Modelica数组机制,并成功应用于数组实例建模与仿真。最后给出了MWorks系统上的数组模型实例。  相似文献   

11.
相控阵雷达广泛应用,其天线阵面对记录回放系统的数据速率要求提升。针对两种传统记录回放系统架构的不足,结合其优点,设计并实现了一种新型的基于FPGA的记录回放系统。该系统设计为板卡的形式,FPGA实现对硬盘的读写操作,采用自定义的文件系统对数据进行管理。经过测试,系统记录速度可以达到292 MB/s,回放速率为340 MB/s。实验结果表明,该记录回放系统性能稳定,通用性好,存储速率满足要求。  相似文献   

12.
13.
叶永  陈建峰  程萍  冷欣 《传感技术学报》2012,25(11):1507-1510
在使用TDOA算法进行被动声定向时,为精确获取麦克风阵列阵元之间接收声源信号的时间差,进而计算目标的方位角,麦克风阵元之间必须保持较高的相位一致性。而从论文与专利检索来看,目前还没有有效方法筛选出符合要求的麦克风阵元。针对此问题,本文基于麦克风阵列阵元相位一致性的指标,设计出麦克风阵元筛选系统,通过实测数据分析表明:一致性较高的麦克风更适合组建麦克风阵列。  相似文献   

14.
超声相控阵检测技术是利用脉冲反射法对被检构件中是否存在缺陷(如裂纹、夹杂、气孔等)进行无损检测,阵列换能器是该检测技术中实现电-声转换的传感器件,其声场特性是能否获得并有效利用被检测部位或区域回波信息的决定因素,也是设计换能器阵的主要依据。从平面矩形活塞阵元的辐射声场出发,利用简便算法对阵元辐射声场、一维线阵辐射声场进行了仿真模拟,分析了影响阵列换能器性能的几个主要因素,提供了阵列换能器的设计思路,并对采用相控阵超声换能器与常规超声换能器探测人工缺陷时的扫查波形进行了比较。  相似文献   

15.
16.
Red green array     
《Displays》1980,2(1):11-12
  相似文献   

17.
Self-organizing learning array   总被引:2,自引:0,他引:2  
A new machine learning concept-self-organizing learning array (SOLAR)-is presented. It is a sparsely connected, information theory-based learning machine, with a multilayer structure. It has reconfigurable processing units (neurons) and an evolvable system structure, which makes it an adaptive classification system for a variety of machine learning problems. Its multilayer structure can handle complex problems. Based on the entropy estimation, information theory-based learning is performed locally at each neuron. Neural parameters and connections that correspond to minimum entropy are adaptively set for each neuron. By choosing connections for each neuron, the system sets up its wiring and completes its self-organization. SOLAR classifies input data based on the weighted statistical information from all the neurons. The system classification ability has been simulated and experiments were conducted using test-bench data. Results show a very good performance compared to other classification methods. An important advantage of this structure is its scalability to a large system and ease of hardware implementation on regular arrays of cells.  相似文献   

18.
19.
This article is devoted to the run-time redistribution of one-dimensional arrays that are distributed in a block-cyclic fashion over a processor grid. While previous studies have concentrated on efficiently generating the communication messages to be exchanged by the processors involved in the redistribution, we focus on the scheduling of those messages: how to organize the message exchanges into “structured” communication steps that minimize contention. We build upon results of Walker and Otto, who solved a particular instance of the problem, and we derive an optimal scheduling for the most general case, namely, moving from a CYCLIC(r) distribution on a P-processor grid to a CYCLIC(s) distribution on a Q-processor grid, for arbitrary values of the redistribution parameters P, Q, r, and s  相似文献   

20.
Initialization of an array, out of which only a small initially unknown portion will eventually be used, is a frequent need in programming. A folklore solution for initializing an array of n entries in constant time uses 2n?log2n? extra bits to realize a stack of back pointers to the actually used entries of the array. Navarro has given a succinct version of this technique, which requires only n + o(n) bits of auxiliary storage. We describe, analyze, and experimentally compare these solutions and their space‐efficient but theoretically suboptimal alternatives based on a simple bitmap for keeping track of the array entries which have been assigned a value. Experimental results suggest that each of the methods has its niche of excellence, which are roughly as follows: the theoretically optimal solutions based on a stack of back pointers perform in general best on sparse arrays, whose access frequency is less than 1% of the number of their entries. Brute‐force initialization of the entire array seems generally to give the best overall performance for dense arrays whose access frequency is over 10% of their size. For the remaining cases of arrays with 1–10% access frequency, the methods which use a simple bitmap appear to give the best performance. The experiments show that the choice of a suitable implementation may yield substantial, up to hundreds of times speed‐ups in the performance of initializable array operations. Copyright © 2015 John Wiley & Sons Ltd.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号