⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccompile.cls

📁 酒店管理VB源码
💻 CLS
📖 第 1 页 / 共 2 页
字号:
End Sub

Public Sub SetEnabledOptimizeConst(ByVal Value As Boolean)  '是否要优化常数运算 (默认true)
    Call cm_SetEnabledOptimizeConst(cmHandle, Value)
End Sub

Public Function GetVersion() As Double    ' 获得版本号
    Call cm_GetVersion
End Function

Public Function GetErrorCode() As Integer    '返回错误代码号
    GetErrorCode = cm_GetErrorCode(cmHandle)
End Function

Public Function GetExeCodeLength() As Integer    '返回编译以后的程序指令区代码长度(字节)
    GetExeCodeLength = cm_GetExeCodeLength(cmHandle)
End Function

Public Function GetExeParameterLength() As Integer     '返回编译以后的程序数据区代码长度(字节)
    GetExeParameterLength = cm_GetExeParameterLength(cmHandle)
End Function

Public Function GetCPUCount() As Double    '获取当前CPU周期计数(CPU周期数)
    GetCPUCount = VB_GetCPUCount()
End Function


'                       <<<   简要说明和帮助   >>>>
' --------------------------------------------------------------------------
'
'  0.支持数学函数表达式的编译执行;
'
'  1.支持带参数编译,参数默认值为0;运行前请赋值;
'
'  2.常数可以用科学计数法表示,如: -1.4E-4=-0.00014;
'    系统定义的常量:  圆周率 PI=3.1415926535897932384626433832795...
'                     逻辑真 true=1
'                     逻辑假 false=0
'    当标识符为e时,系统默认值为 自然数
'      即 e=2.7182818284590452353602874713527...
'      但它和PI,true,false不同,e可以重新赋值, pi,true,false是系统常量,e是用户变量
'
'
'
'  3.使用多重括号并不会降低速度,特别是在不容易分清楚计算优先级的时候,请多使用括号;
'
'  4.表达式中函数名和参数名等不区分大小写;关键字中不允许插入空格等字符;
'
'  5.编译的文本长度几乎不受限制(只是受内存和编译时间等系统影响)
'
'  6.利用错误号功能可以将错误描述翻译为其他语言;
'
'  7.允许在表达式中使用注释,注释写法为:
'         单行注释:  双斜杠// 开始到一行结束(即遇到回车换行符)
'         长段注释:  '{'、'}' 或'/*'、'*/' 之间的部分
'
'  8.系统使用的标识符除去下面列出的函数名(包括别名)外还有 :
'    'PI'、'true'、'false'、'TCmSYS_IF_?'、'TCmSYS_Boolean??'、'TCmSYS_Const_*' 、
'    'TCmSYS_Const_ff_x_*'、'TCmSYS_DefineFPName_???'和 'TCmSYS_FF_*' 等,
'    自定义的标识符名称请不要再次使用它们;  (即前缀不能为'TCmSYS_')
'
'  9.表达式中支持的函数:
'
'    这里的实数域为:  R' ,  R'约为 (-1.1E+4932,-3.6E-4951) and [ 0 ] and (+3.6E-4951,+1.1E+4932)
'    当实数属于(+-3.6E-4951,0) 时认为实数等于0
'    没有特别说明的变量取值范围为实数域 R'
'
'  (函数计算的结果和中间结果也不能超出实数域 R')
'
'  算符(函数)名称       书写格式和变量取值范围                       例子(说明)
'
'  +        加法        x+y     或者: Add(x,y)                       3.5+5=8.5
'  -        减法        x-y     或者: Sub(x,y)                       8-3=5
'  *        乘法        x*y     或者: Mul(x,y)                       2*3=6
'  /        除法        x/y     或者: Div(x,y)   ; y<>0              3/2=1.5
'  \        整除        x\y     或者: DivE(x,y)  ; y<>0              25\10=2
'  Mod      求余        x Mod y   或者: x%y、Mod(x,y) ; y<>0         14 Mod 5=4
'  ^        指数        x^y     或者:  Power(x,y)、x**y              2^3=8
'                       ; x<0时,y必须为整数
'                       ; x=0时,y>0
'  IntPower 整数次方    IntPower(x,N); N<2^31                        IntPower(5,3)=125
'
'      ;比较运算产生的结果为逻辑值(真或假),即结果只可能为1或0
'  =        等于        x=y                                          (2=3-1) =true =1
'  <>       不等于      x<>y                                         (2<>3-1) =false =0
'  <        小于        x<y                                          (2<3) =true
'  >        大于        x>y                                          (2>3) =false
'  <=       小于等于    x<=y                                         (sin(a)<=1) =true
'  >=       大于等于    x>=y                                         (3>=PI) =false
'
'      ;逻辑运算中 0表示 假(false),非0会被当作 真(true)来参加逻辑运算
'      ;用大写X,Y表示逻辑值或实数(注意必须写扩号)
'  ADD      逻辑与      (X) ADD (Y)                                  (1>2) AND (true)=false
'  OR       逻辑或      (X) OR (Y)                                   (false) OR (true)=true
'  XOR      逻辑异或    (X) XOR (Y)                                  (true) XOR (true)=false
'  NOT      逻辑非      NOT (X)                                      NOT (1)=false
'
'  Max      最大值      Max(x,y)                                     Max(3,4)=4
'  Min      最小值      Min(x,y)                                     Min(3,4)=3
'  Sqr      平方        Sqr(x)                                       Sqr(3)=9  //注意平方和开方的函数名称
'  Sqr3     立方        Sqr3(x)                                      Sqr3(3)=27
'  Sqr4     四次方      Sqr4(x)                                      Sqr4(3)=81
'  Sqrt     开方        Sqrt(x)    ; x>=0                            Sqrt(3)=1.73205080756888
'
'  Exp      自然指数    Exp(x)                                       Exp(2)=e*e=e^2
'  Ln       自然对数    Ln(x)                    ; x>0               Ln(e)=1
'  Log2     2的对数     Log2(x)                  ; x>0               Log2(8)=3
'  Log10    10的对数    Log10(x) 或者: Log(x)    ; x>0               Log(100)=2
'
'  Abs      绝对值      Abs(x)                                       Abs(-2)=2 ; Abs(2)=2
'  SqrAdd   平方和      SqrAdd(x,y)                                  sqrAdd(3,4)=25
'  Rev      倒数        Rev(x)                                       Rev(5)=1/5=0.2
'  Int      取整        Int(x)   或者: Floor(x)                      (不超过x的最大整数) Int(2.3)=2 ; Int(-2.3)=-3
'  Trunc    截断取整    Trunc(x)                                     (向零取整) Trunc(2.3)=2 ; Trunc(-2.3)=-2
'  Round    四舍五入    Round(x)                                     (四舍五入取整)  Round(2.51)=3 ; Round(2.49)=2
'  Ceil     舍入取整    Ceil(x)                                      (向正穷大取整)  Ceil(-2.2)=-2 ; Ceil(2.8)=3
'  Sgn      符号函数    Sgn(x)                                       Sgn(-2)=-1 ;  Sgn(0)=0 ; Sgn(2)=1
'  Hypot    斜边        Hypot(x,y)                                   Hypot(x,y)=Sqrt(x*x+y*y)
'  Random   随机函数    Random(x) 或者:RND(x)、Rand(x)               Random(2.5)=2.5*a ,其中a为随机数0<=a<1
'          (要产生真正的随机数,而不是固定随机数序列,请在创建或编译完成后
'           取得表达式值之前调用一次CCopmile.SetRandomize();函数。)
'
'  Sin      正弦        Sin(x)                                       Sin(pi/6)=0.5
'  Cos      余弦        Cos(x)                                       Cos(0)=1
'  Tan      正切        Tan(x)   或者: tg(x)                         Tan(pi/4)=1
'  ArcSin   反正弦      ArcSin(x)    ; -1<=x<=1                      ArcSin(1)=1.5707963267949=pi/2
'  ArcCos   反余弦      ArcCos(x)    ; -1<=x<=1                      ArcCos(0)=1
'  ArcTan   反正切      ArcTan(x) 或者:  Arctg(x)                    ArcTan(1)=0.785398163397448=pi/4
'  ArcTan2  反正切2     ArcTan2(y,x) 或者:  Arctg2(y,x)              ArcTan2(2,1)=1.10714871779409
'                       ;y为纵坐标、x为横坐标
'  Cot      余切        Cot(x)    或者: Ctg(x)   ;x<>0               Cot(x)=1/Tan(x)
'  Sec      正割        Sec(x)                                       Sec(x)=1/Cos(x)
'  Csc      余割        Csc(x)                   ;x<>0               Csc(x)=1/Sin(x)
'  ArcCot   反余切函数  ArcCot(x) 或者: ArcCtg(x)   ;x<>0            ArcCtg(x)=ArcTan(1/X)  //Delphi6 误为 ArcCtg(x)=Tan(1/X)  !
'  ArcSec   反正割函数  ArcSec(x)              ;|x|>=1               ArcSec(x)=ArcCos(1/X)  //Delphi6 误为 ArcSec(x)=Cos(1/X)  !
'  ArcCsc   反余割函数  ArcCsc(x)              ;|x|>=1               ArcCsc(x)=ArcSin(1/X)  //Delphi6 误为 ArcCsc(x)=Sin(1/X)  !
'
'  SinH     双曲正弦    SinH(x)                                      SinH(2)=3.62686040784702=(e^2-e^(-2))/2
'  CosH     双曲余弦    CosH(x)                                      CosH(2)=3.76219569108363=(e^2+e^(-2))/2
'  TanH     双曲正切    TanH(x)  或者: tgH(x)                        TanH(2)=0.964027580075817=SinH(2)/CosH(2)
'  ArcSinH  反双曲正弦  ArcSinH(x)                                   ArcSinH(3.62686040784702)=2
'  ArcCosH  反双曲余弦  ArcCosH(x)         ; x>=1                    ArcCosH(3.76219569108363)=2
'  ArcTanH  反双曲正切  ArcTanH(x)  或者: ArctgH(x)                  ArcTanH(0.761594155955765)=1
'  CotH     双曲余切       CotH(x)  或者: CtgH(x)  ;x<>0             CotH(x)=1/TanH(x)
'  SecH     双曲正割       SecH(x)                                   SecH(x)=1/CosH(x)
'  CscH     双曲余割       CscH(x)       ;x<>0                       CscH(x)=1/SinH(x)
'  ArcCotH  反双曲余切函数 ArcCotH(x) 或者: ArcCtgH(x)   ;x<>0       ArcCtgH(x)=ArcTanH(1/X)
'  ArcSecH  反双曲正割函数 ArcSecH(x)      ;0<x<=1                   ArcSecH(x)=ArcCosH(1/X)
'  ArcCscH  反双曲余割函数 ArcCscH(x)      ;x<>0                     ArcCscH(x)=ArcSinH(1/X)
'
'  If       条件函数    If(s,r1,r2)                                  If(True,2,3)=2; If(0,2,3)=3;
'           (等价于高级语言的: If (s) Then Result:=r1 Else Result:=r2;)
'
'  ff       定积分函数  ff(a,b,x,g(x)) 或者: ff(a,b,x,N,g(x))        ff(-1,1,y,Sqrt(1-y*y))=pi/2
'
'           ( ff函数特别说明:
'             函数g(x)是关于'x'的表达式(也可以不含有变量x),这里的自变量x与本函数ff以外的x没有关系;
'
'             ff函数表示 对函数 g(x) 从 a 积到 b 积分,
'                        x表示以x为积分变量对函数g(x)积分, (或其他自变量名称标识符)
'                        N (N>0) 表示 把积分区间分成 N 份来积 ,省略 N 时默认为 1000 ;
'
'             积分函数支持多重积分(较慢)
'             (注意: 多重积分和积分套嵌不是一个意思)
'
'             比如求单位球体的体积(半径R=1)
'             二重积分表达式为:
'             ff(-1,1,x,                          //x从-1到1积分
'                ff(-Sqrt(1-x*x),Sqrt(1-x*x),y,   //y从-Sqrt(1-x*x)到sqrt(1-x*x)积分
'                   2*Sqrt(1-x*x-y*y)
'                  )
'               )
'
'             =4.18883330446894
'             =4*Pi/3
'             =ff(-1,1,x,PI*(1-x*x))   // (求单位球体体积的一重积分表达式)
'           )
'
'  10. 运算符优先级表:
'        由高到低
'        ()             (包括各种函数)
'        ^
'        *  \  /  mod
'        +  -
'        =  <>  <  >  <=  >=
'        AND、OR、XOR  (NOT 可以看作函数)
'
'  11. 更强大的功能请参看类的接口函数
'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -