运算符
算术运算符
双目运算符
运算符 |
名称 |
示例 |
说明 |
^ |
乘方 | 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,......)
结构
结构体的作用是把内容相关的类型不同的数据集中管理。例如大多软件都有开发单位、版本、单位地址、联系方法、开发时间、版权所有时间等相关信息,这些信息如果各用单独的变量来保存显得杂乱,把它们统一放到结构体类型的一个变量中既便于管理,又提高了程序的可读性。
结构实际是一个新的数据类型,需要通过一个变量将其实例化。