- 浏览: 118235 次
- 来自: ...
文章分类
最新评论
关于形参,实参,相关数据
一、形参(FormalParameter)
形参用于WorkflowProcess和Application的定义中,一旦WorkflowProcess和Application定义了一定数量的形参,那么:
- 引用该WorkflowProcess做为Subflow的Activity的定义中,必须定义相同数量的实参;引用该Application做为Tool的Activity的定义中,必须定义相同数量的实参;由建模工具负责保证
- 实例化该WorkflowProcess和Application时,引擎负责用正确的实参的值初始化其形参
二、实参(ActualParameter)
实参用于Subflow类型的Activity和Tool类型的Activity定义中
- 其数量必须符合所引用的WorkflowProcess或Application中所定义的形参;由建模工具负责保证
- 定义时其数据来源可以是本流程的相关数据及本流程的形参;由建模工具负责保证
- 实例化时引擎负责用正确的相关数据的值和本流程实参的值初始化其值
三、相关数据(DataField)
相关数据用于WorkflowProcess的定义中
- 实例化时,引擎负责将其初始化为定义中所声明的初始值(InitialValue)
- 做为实参的数据来源之一,引擎负责将其关联到正确的实参
四、IN,OUT,INOUT
形参有三种类型,IN,OUT,INOUT
- IN:对应到实参时,引擎负责该实参必须有初始值,并且Activity执行完毕之后,引擎负责忽略该实参值的任何改变,保持原值
- OUT:对应到实参时,引擎不必为该实参赋初值,Activity执行完毕前,必须为该实参赋值,Activity执行完毕之后,引擎必须保留其值
- INOUT:对应到实参时,引擎负责该实参必须有初始值,Activity执行完毕前,可以为该实参赋值,也可以不赋,Activity执行完毕之后,引擎必须保留其值
五、Index
形参有传递顺序问题,定义中用Index属性来表示,引擎负责将实参对应到正确的形参;例如:
<FormalParameters><BasicType Type="STRING" /></DataType><Description>姓名</Description></FormalParameter><BasicType Type="INTEGER" /></DataType><Description>数量</Description></FormalParameter><BasicType Type="BOOLEAN" /></DataType><Description>是否同意</Description></FormalParameter></FormalParameters>
假设实参放在object[] actParams中,那么Subflow.Wor2.For1的值应该是actParams[2],Subflow.Wor2.For2是actParams[0],Subflow.Wor2.For3是actParams[1]
-----------------------------------------------------WfMC 原文-----------------------------------------------------------
<chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-font-kerning: 0pt">7.1.2</span></chsdate>.1. 参数传递语义
参数传递语义定义如下:
i. 在调用中,只读的形式参数(IN)由其相对应的实际参数的值初始化。这就是按值传递语
义。
ii. 可读/写形式参数(INOUT)由其相对应的实际参数的值来初始化,但实际参数必须是工作
流相关数据实体的标识符。当过程完成后,输出形式参数的值要复给对其初始化的实际参
数。这是拷贝归还语义。
iii. 只写形式参数(OUT)初始化为0(String类型的被设为空)。在过程完成后,输出形式参数的值要复给原始的实际参数(实际参数必须是工作流相关数据实体的标识符)。这就是
0-归还语义。
<chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-font-kerning: 0pt">7.1.2</span></chsdate>.2. 并发语义
参数的拷贝和存储是自动完成的,从而避免在并发的工作流相关数据操作中出现访问冲突,而这些操作是序列化的。在<chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: ËÎÌå">7.1.2</span></chsdate>.1的(C)中,调用返回时,拷贝和存储间默认是不加锁的,并且返回参数值会覆盖本地值。
<chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-font-kerning: 0pt">7.1.2</span></chsdate>.3. 形式——实际参数 映射
参数映射表定义了,调用过程中实际参数向形式参数的映射。实际参数按照顺序1:1映射到形式参数,例如第一个实际参数映射到第一个形式参数,第二个实际参数映射到第二个形式参数。在过程定义时需要类型兼容,或者在工作流系统运行时进行强制类型转换。
在实际参数是一个表达式的情况下,工作流机对表达式进行计算和缓冲,同时缓冲器的内容用来进行形式——实际参数映射。缓冲和运算是如何运行的超出了本篇规范的范围。
发表评论
-
The Object Primer
2004-12-11 11:21 5901,书名 被翻译成“ ... -
错误处理规范
2004-12-11 16:47 757错误处理规范 〇、概念澄清 概念 解释 错误 ... -
Java,误解为何如此之深
2005-08-24 13:50 593前几天被电话面试,问J ... -
Java:画蛇添足的编码规范
2005-09-02 13:13 611前几天公司培训编码规范: 第n条: ... -
synchronized : 规则, 推论与实践
2007-07-23 22:32 46714.3.Synchronization. Rule ... -
交互设计: 股市帮凶
2008-05-04 21:30 642同事 Y 在线操作股票时, 把"买入"点成 ... -
交互设计: 火车上的厕所
2008-05-26 17:17 608有人在动车组的厕所前等了很久, 直到乘务员路过说厕所是被锁住了 ... -
设计原则与模式: 案例介绍--CppUnit
2008-06-01 20:15 619设计原则与模式: 案例介绍--CppUnit CppUnit ... -
工作流:第一次发版,过程总结
2004-12-11 11:42 711交流 即时讨论:小组成员咫尺之遥,有问题立即提出并解决 ... -
工作流:第一次发版,设计总结
2004-12-11 11:43 613整体 面向接口:消息系统,持久系统等,其实现都是可替换 ... -
Beyond Workflow : An Introduction to Vitria BusinessWare
2005-09-26 10:13 804一、简介 Busines ... -
Vitria BusinessWare: 存储与访问安全
2006-03-26 15:45 746事实上,BusinessWare使用LDAP做为存储机制和 ... -
Vitria BusinessWare: 平台与软件总线
2006-04-01 12:59 840经过一段时间的使用 ... -
Vitria BusinessWare: Web Services
2006-04-01 14:30 739BusinessWare的Web Services ... -
Web Services:自洽,编码,交换模型
2006-04-01 16:02 6771, 自洽 以前曾经写过: 目前WebServi ... -
Web Services:WSDL 1.1 规范中的几个错误
2006-04-01 16:40 721读完了WSDL 1.1的规范,令人惊讶的是发现似乎例子中有几个 ... -
C++/CLI:被忽视的集成技术
2006-05-17 20:02 755十几行代码,就使一个重要的旧系统组件,完全融入了基于.Ne ... -
AJP/JK:异构Web平台的集成技术
2006-05-25 21:44 710Tomcat Connector 可以将Tomcat ... -
Vitria BusinessWare: 事件与端口
2006-05-27 17:24 658Event BusinessWare是一个事件驱动的系统 ... -
WS-Security Interoperability Issues: WebSphere, JBoss, Axis and .Net
2006-08-31 22:46 839检验了一下WS-Security的互操作情况,涉及到 ...
相关推荐
流程相关数据包括所有与工作流执行相关的数据,如任务的状态、执行结果等。 **9.2 形参** 形参是指在定义工作流时预先设定的参数,用于接收外部输入。 **9.3 实参** 实参是在执行工作流时实际传入的参数值。 **...
7. 形参与实参:形参为指针变量时,实参可以是数组名,也可以是指向数组的指针,因此"必须是数组名"的说法错误。 8. Java集合框架:java.util包中的ArrayList、HashMap等类用于操作集合,而Arrays类用于操作数组。 ...
- **形参实参的使用**:在函数调用时,形参是方法定义中的参数,而实参是调用方法时传入的值。形参仅存在于方法内部,实参则是在调用时传递给方法的数据。 - **数组的定义与遍历**:数组是存储相同类型数据的集合...
17. 指针参数:形参为指针变量时,实参可以是数组名、指向数组的指针或其他满足要求的值。 18. UDP通信:在UDP中,通过DatagramPacket的getAddress()方法获取发送端的IP地址。 19. HTML超链接:在HTML中,标记用于...
4. **数据库设计**:数据字典是在需求分析阶段建立的,用于记录系统中数据的详细信息。数据库设计通常分为需求分析、概念设计、逻辑设计和物理设计等阶段。 5. **E-R图的作用**:E-R图(实体-关系图)能表示实体集...
13. **形参为指针变量**:形参为指针变量时,实参可以是数组名或其他指针类型,不只是数组名。 14. **VFP 列表长度**:`LISTSTRU` 命令显示每个记录的长度总计,用户可用字段总宽度是 `COUNT`。 15. **关系数据...
- **函数与参数**:了解函数定义、调用、返回值以及形参实参的概念。 - **数组与指针**:理解数组的声明、初始化及访问方式;掌握指针的基本概念、指针与数组的关系、指针运算等。 #### 2. 高级特性 - **类与对象**...
1. 引用调用:在C++等编程语言中,引用调用是形参为引用类型,实参是变量,这样调用函数时,形参会直接引用实参的内存地址,修改形参的值会直接影响到实参。 2. SQL查询条件:查询成绩在60-80分之间的学生信息,应...
17. **数据不一致原因**:数据不一致的根本原因是数据冗余和缺乏有效的完整性约束。 18. **关系运算**:选择、投影和连接是专门的关系运算,而交叉运算通常是集合运算。 19. **eval函数**:在Python中,`eval('500...
4. **数据的存储结构**:数据的存储结构是指数据元素在计算机存储器中的存储方式。 - **选项分析**: - A. 数据所占的存储空间:这并不是数据的存储结构。 - B. 数据的逻辑结构在计算机中的存放形式:这是数据...
19. 函数参数传递:当形参为指针变量时,实参可以是变量地址或指向该类型变量的指针,要求类型匹配。 以上是对计算机二级等级考试相关知识点的详细解释,涵盖了数据库操作、编程、网络、软件开发、HTML和数据结构等...
5. C 语言参数传递:C 语言中,简单变量作为函数参数时,数据传递方式是单向值传递,即实参传给形参的值是复制的,形参改变不会影响实参。 6. 数据库系统组成部分:包括数据库、软件(如数据库管理系统)、硬件以及...
4. **数据库设计**:数据字典是在需求分析阶段建立的,用于记录系统中数据的详细信息。选项A正确,它描述了数据字典的建立阶段。数据库设计通常包括需求分析、概念设计、逻辑设计和物理设计等步骤。 5. **E-R图**:...
12. Python参数传递:Python函数的参数传递通常是值传递,实参向形参传递数据。如果传递的是可变对象,形参的改变会影响到实参。位置参数按照参数位置匹配,而关键字参数允许按照参数名指定值,可以跳过某些参数或...
9. **数据字典**:数据字典通常用于数据流图(DFD)中,定义了系统中所有数据元素的详细信息。 10. **启动Visual FoxPro 6.0**:错误的操作是将图标拖动到新位置,这并不会启动程序。 11. **多行文本显示**:在...
15. **参数传递**: 对于简单数据类型的实参,数据是从实参传给形参的。 16. **主函数**: 每个C程序至少有一个`main()`函数。 17. **类型转换**: 当函数返回类型与`return`语句中的表达式类型不匹配时,以函数类型...
29. 函数调用:C语言中,实参传值给形参,形参不能反向传递。 30. 欧拉回路:图中每边只经过一次且无重复的路径。 31. 软件过程:模块的详细操作步骤。 32. 计算机病毒特性:隐蔽性、潜伏性、传播性、激发性、...
形参在函数内部工作,实参是调用者提供的数据,它们之间通过复制传递数据。 9. **面向对象的三大特征**: - 封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。 - 继承:一个类可以继承另一个类的属性和...
- **解析**: 系统总线主要包括三类:数据总线用于数据传输;地址总线用于指定数据的位置;控制总线则用于协调数据总线和地址总线的工作。 ### 3. 双精度数字类型的精度 - **问题**: 在数字数据类型中,双精度数字...
19. **形参为指针**:形参为指针变量时,实参可以是数组名,也可以是变量的地址。 20. **Java线程间通信**:Java中,管道流(PipeStream)可以实现线程间的通信。 21. **Visual FoxPro查找记录**:使用LOCATE FOR...