运算符

算术运算符

双目运算符

运算符

名称

示例

说明

^

乘方 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表达式的更多相关文章

  1. powerScript脚本

    一.powerScript的语法 1.0变量的命名及使用 powerscript的标识符(变量名称)必须以字母或下划线开头,其它的字符可以是下划线(_).短横线(-).美元符号($).号码符号(#) ...

  2. 【.net 深呼吸】细说CodeDom(2):表达式、语句

    在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...

  3. 你知道C#中的Lambda表达式的演化过程吗?

    那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西是那么的高深难懂. 委托的使用 例一: 什么是委托? 个人理解:用来传递方法的类型.(用来传递数字的类型有int.float ...

  4. 再讲IQueryable<T>,揭开表达式树的神秘面纱

    接上篇<先说IEnumerable,我们每天用的foreach你真的懂它吗?> 最近园子里定制自己的orm那是一个风生水起,感觉不整个自己的orm都不好意思继续混博客园了(开个玩笑).那么 ...

  5. Linq表达式、Lambda表达式你更喜欢哪个?

    什么是Linq表达式?什么是Lambda表达式? 如图: 由此可见Linq表达式和Lambda表达式并没有什么可比性. 那与Lambda表达式相关的整条语句称作什么呢?在微软并没有给出官方的命名,在& ...

  6. 背后的故事之 - 快乐的Lambda表达式(一)

    快乐的Lambda表达式(二) 自从Lambda随.NET Framework3.5出现在.NET开发者眼前以来,它已经给我们带来了太多的欣喜.它优雅,对开发者更友好,能提高开发效率,天啊!它还有可能 ...

  7. Kotlin的Lambda表达式以及它们怎样简化Android开发(KAD 07)

    作者:Antonio Leiva 时间:Jan 5, 2017 原文链接:https://antonioleiva.com/lambdas-kotlin/ 由于Lambda表达式允许更简单的方式建模式 ...

  8. SQL Server-表表达式基础回顾(二十四)

    前言 从这一节开始我们开始进入表表达式章节的学习,Microsoft SQL Server支持4种类型的表表达式:派生表.公用表表达式(CTE).视图.内嵌表值函数(TVF).简短的内容,深入的理解, ...

  9. 立即执行函数表达式(IIFE)

    原文地址:benalman.com/news/2010/11/immediately-invoked-function-expression/ 译者:nzbin 也许你还没有注意到,我是一个对术语比较 ...

随机推荐

  1. [UE4]Overlap Event 碰撞事件

    一.对于VR中角色的手模型,一般是在角色中另外添加一个球型碰撞体   二.并且一定要勾选“Generate Overlap Events(触发重叠事件)”选项(默认状态是勾选的) 三.添加开始碰撞事件 ...

  2. cefsharp插入自定义JS

       string script_1 = "document.getElementsByTagName('head')[0].appendChild(document.createEleme ...

  3. 刘志梅2017710101152.《面向对象程序设计(java)》第十二周学习总结

    实验十二  图形程序设计 实验时间 2018-11-14 1.理论知识 (1) 基本AWT库采用将处理用户界面元素的任务委派给每个目标平台的本地GUI工具箱的方式,由本地GUI工具箱负责用户界面元素的 ...

  4. 机器学习笔记之二-win10+cuda9.1+CUDNN7+Anaconda3+VS2017+tensorflow1.5+opencv3.4

     [Tensorflow]环境搭建vs2017+win10+py3.6+cuda9.1+cudnn7+tf1.5 一.安装cuda 9.1+VS2017   一路下一步即可,环境变量cuda会自动配好 ...

  5. Odoo二次开发

    Odoo 点击进入

  6. Python for循环之图像练习

    矩形 # 控制行 for i in range(1,5): # 控制列 for j in range(1,8): # 用end在末尾传入空格串,这样print函数就不会自动换行了 print('*', ...

  7. python类特列方法使用

    class Rgc(object): def __new__(cls, *args, **kwargs): print('在类通过__new__方法实例化一个对象') return super(Rgc ...

  8. Spring获取URL相关信息

    获取请求的URL:request.getRequestURL().toString(); 获取上下文名称(项目名称):request.getContextPath()

  9. 20165205 《网络对抗技术》 Exp0 Kali安装

    20165205 <网络对抗技术> Exp0 Kali安装 一.下载及安装 打开官方下载网站 我下载的是vm版,64位,如下图 之后继续点击 之后就可以等待下载成功了,成功之后找到.vmx ...

  10. 练习: bs4 简单爬取 + matplotlib 折线图显示 (关键词,职位数量、起薪)

    要看一种技术在本地的流行程度,最简单的就是找招聘网站按关键词搜索. 比如今天查到的职位数量是vue 1296个,react 1204个,angular 721个.国际上比较流行的是react,本地市场 ...