PowerScript表达式
运算符
算术运算符
双目运算符
|
运算符 |
名称 |
示例 |
说明 |
|
^ |
乘方 | 3^2 | |
|
+ |
加 | i_age+1 | |
|
- |
减 | i_age - 1 | |
|
* |
乘 | l_w*3 | |
|
/ |
除 | i_w/3 | |
|
= |
赋值 | i_w=34 |
单目运算符
|
- |
求反 | -i_x | 结果为i_x的相反数 |
|
++ |
增1 | i_age ++ | |
|
-- |
减1 | l_w -- |
关系运算符
|
= |
等于 | i_x=i_y | 可比较数值及字符型数据 |
|
> |
大于 | i_x>i_y | |
|
< |
小于 | i_<i_y | |
|
>= |
大于等于 | l_x>=l_y | |
|
<= |
小于等于 | s_x<=s_y | |
|
<> |
不等于 | s_x<>s_y |
组合运算符
|
^= |
乘方等于 | i_x^=i_y | i_x=i_x ^ i_y |
|
+= |
加等于 | i_x+=i_y | i_x=i_x + i_y |
|
-= |
减等于 | i_x-=i_y | i_x=i_x - i_y |
|
*= |
乘等于 | i_x*=i_y | i_x=i_x * i_y |
|
/= |
除等于 | i_x/=i_y | i_x=i_x / i_y |
串运算符
String s_a1="hello ",s_a2="world"
String s_a
s_a=s_a1+s_a2
连接运算符
|
NOT |
非 | NOT b_z | b_z为真则结果为假 |
|
AND |
与 | b_a AND b_c | b_a和b_c都为真时结果才为真 |
|
OR |
或 | b_a OR b_c | b_a和b_c只要有一个为真,结果即为真 |
括号
用来改变运算的先后次序
例:1+2*3 与 (1+2)*3
运算符之间的优先关
|
高 /\ 低 |
括号() |
函数定义和作用域
函数是程序中特定的功能模块,通常应用程序的开发工具会把经常使用的功能写成函数,提供给程序设计人员使用。PowerBuilder中最常用的是全局函数和窗口函数,还有菜单函数、用户对象函数及外部函数。
使用函数最重要的是了解函数的参数个数及类型,还有函数的返回值类型及意义。参数的作用是向函数传入数据,返回值的作用是传回函数的计算结果或运行状态。(参数也可用于从函数内部得到计算的结果。)
函数的作用域
函数和变量一样,都有一定的作用域。全局函数的作用域和全局变量的作用域一样,在整个应用程序的任何地方都能通用,是等级最高、作用最广的函数。窗口函数仅仅允许在该窗口的事件和函数脚本中进行通用。菜单函数要在菜单的脚本编辑状态下编辑。用户对象函数既有全局对象函数的特点,也有类似窗口函数的特点。外部函数则区分为全局外部函数和在对象内部定义的局部外部函数。除了全局函数和外部函数,对象函数(如窗口函数、菜单函数、用户对象函数等)都有一个权限的问题。
Public:公众权限,其作用域限制最低,使用非常自由。
Private:私有权限,仅能在当前对象范围内使用。
Protect:保护权限。介于Public和Private之间的一个作用域,所有以该对象为父对象继承出去的子对象都可以调用Protect权限的对象函数,即这个对象家族都可以共享的函数。
3、函数的定义方法
一般的函数定义都会发生参数的传递和参数的返回,最典型的函数定义方法如下:
Return ArgumentName FunctionName(argument1,argument2,......)
结构
结构体的作用是把内容相关的类型不同的数据集中管理。例如大多软件都有开发单位、版本、单位地址、联系方法、开发时间、版权所有时间等相关信息,这些信息如果各用单独的变量来保存显得杂乱,把它们统一放到结构体类型的一个变量中既便于管理,又提高了程序的可读性。
结构实际是一个新的数据类型,需要通过一个变量将其实例化。
PowerScript表达式的更多相关文章
- powerScript脚本
一.powerScript的语法 1.0变量的命名及使用 powerscript的标识符(变量名称)必须以字母或下划线开头,其它的字符可以是下划线(_).短横线(-).美元符号($).号码符号(#) ...
- 【.net 深呼吸】细说CodeDom(2):表达式、语句
在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...
- 你知道C#中的Lambda表达式的演化过程吗?
那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西是那么的高深难懂. 委托的使用 例一: 什么是委托? 个人理解:用来传递方法的类型.(用来传递数字的类型有int.float ...
- 再讲IQueryable<T>,揭开表达式树的神秘面纱
接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个风生水起,感觉不整个自己的orm都不好意思继续混博客园了(开个玩笑).那么 ...
- Linq表达式、Lambda表达式你更喜欢哪个?
什么是Linq表达式?什么是Lambda表达式? 如图: 由此可见Linq表达式和Lambda表达式并没有什么可比性. 那与Lambda表达式相关的整条语句称作什么呢?在微软并没有给出官方的命名,在& ...
- 背后的故事之 - 快乐的Lambda表达式(一)
快乐的Lambda表达式(二) 自从Lambda随.NET Framework3.5出现在.NET开发者眼前以来,它已经给我们带来了太多的欣喜.它优雅,对开发者更友好,能提高开发效率,天啊!它还有可能 ...
- Kotlin的Lambda表达式以及它们怎样简化Android开发(KAD 07)
作者:Antonio Leiva 时间:Jan 5, 2017 原文链接:https://antonioleiva.com/lambdas-kotlin/ 由于Lambda表达式允许更简单的方式建模式 ...
- SQL Server-表表达式基础回顾(二十四)
前言 从这一节开始我们开始进入表表达式章节的学习,Microsoft SQL Server支持4种类型的表表达式:派生表.公用表表达式(CTE).视图.内嵌表值函数(TVF).简短的内容,深入的理解, ...
- 立即执行函数表达式(IIFE)
原文地址:benalman.com/news/2010/11/immediately-invoked-function-expression/ 译者:nzbin 也许你还没有注意到,我是一个对术语比较 ...
随机推荐
- submit提交判断
body部分 <form action='https://www.baidu.com' method='post' > 用 户 名:<input ...
- Redis集群搭建-韩国庆
认真一步一步搭建下来,就可以成功.... Redis-cluster集群架构讲解 redis集群专业名词称之为Redis-cluster,redis集群是从3.0版本以后才有的概念,也就是说在3.0之 ...
- 更多的bash命令
深入介绍Linux系统管理命令,可以使用这些命令处理系统上的数据文件: 1.监控程序 1.1.进程的查看 ps 查看进程 GNU ps 命令支持3种不同的命令行参数: 1.Unix类型参数,前面一条短 ...
- postgresql 创建gin索引
1.创建gin类型的索引 postgresql 创建gin索引遇到的问题:1.ERROR: operator class "gin_trgm_ops" does not exist ...
- 基于KMP算法的字符串模式匹配问题
基于KMP算法的字符匹配问题 反正整个清明都在纠结这玩意...差点我以为下个清明要给自己过了. 至于大体的理解,我就不再多说了(还要画图多麻烦鸭),我参考了以下两个博客,写的真的不错,我放了超链接,点 ...
- xml模块学习
import xml.etree.ElementTree as ET tree = ET.parse("xmltest.xml") root = tree.getroot() pr ...
- ASE存储过程和IQ存储过程的常见区别(附例子)
ASE存储过程和IQ存储过程的常见区别(附例子) 1 存储过程简介 存储过程(Stored Procedure)是为了完成特定的功能而汇集成一组的SQL语句集,并为该组SQL语句命名.经编译后存储在S ...
- css 之过渡效果
之前写css的效果,都是使用js 来完成的,但是写js比较耗费时间,有时候逻辑不对,还出不来效果,所以也比较烦:所以一些简单的效果,就使用css 来完成会比较好一些,不必耗费太多的精力: 但是写css ...
- python3基础-set
集合:无序的,不重复的数据组合 作用: 1.去重,把一个列表变成集合,就自动去重了 2.关系测试,测试两组数据之前的交集.差集.并集等关系 set和dict类似,也是一组key的集合,但不存储valu ...
- Java_监听文件夹或者文件是否有变动
package org.testWatch.Watch; import java.nio.file.FileSystems; import java.nio.file.Path; import jav ...