zoukankan      html  css  js  c++  java
  • delphi学习笔记1

    快捷键
    CTRL+ENTER 定位到单元文件
    F6快速查找文件




    uses语句和include 指令

    C++程序员应该知道uses语句和include 指令是不同的。uses语句只是用于输入引用单元的预编译界面部分,
    引用单元的实现部分在单元编译时才考虑。你引用的单元可以是源代码格式(PAS),也可以是编译格式(DCU),但是必须用同一版本的Delphi进行编译。


    引用参数

    引用参数var关键字标示:

    procedure DoubleTheValue (var Value: Integer);
    begin
      Value := Value * 2;
    end;

    在这种情况下,参数既把一个值传递给过程,又把新值返回给调用过程的代码。当你执行完以下代码时:

    var
      X: Integer;
    begin
      X := 10;
      DoubleTheValue (X);

    x变量的值变成了20,因为过程通过引用访问了X的原始存储单元,由此改变了X的初始值。




    Forward 声明

    当使用一个标识符(任何类型)时,编译器必须已经知道该标识符指的是什么。为此,你通常需要在例程使用之前提供一个完整的声明。然而在某些情况下可能做不到这一点,例如过程A调用过程B,而过程B又调用过程A,那么你写过程代码时,不得不调用编译器尚未看到其声明的例程。

    欲声明一个过程或函数,而且只给出它的名字和参数,不列出其实现代码,需要在句尾加forward 关键字:

    procedure Hello; forward;



    函数重载

    重载的思想很简单:编译器允许你用同一名字定义多个函数或过程,只要它们所带的参数不同。实际上,编译器是通过检测参数来确定需要调用的例程。

    下面是从VCL的数学单元(Math Unit)中摘录的一系列函数:

    function Min (A,B: Integer): Integer; overload;
    function Min (A,B: Int64): Int64; overload;
    function Min (A,B: Single): Single; overload;
    function Min (A,B: Double): Double; overload;
    function Min (A,B: Extended): Extended; overload;

    当调用方式为Min (10, 20)时,编译器很容易就能判定你调用的是上列第一个函数,因此返回值也是个整数。



    确省参数

    Delphi 4 中添加了一个新功能,即允许你给函数的参数设定确省值,这样调用函数时该参数可以加上,也可以省略。下例把应用程序全程对象的MessageBox 方法重新包装了一下,用PChar 替代字符串,并设定两个确省值:

    procedure MessBox (Msg: string;
      Caption: string = 'Warning';
      Flags: LongInt = mb_OK or mb_IconHand);
    begin
      Application.MessageBox (PChar (Msg),
        PChar (Caption), Flags);
    end;

    使用这一定义,你就可以用下面任一种方式调用过程:

    MessBox ('Something wrong here!');
    MessBox ('Something wrong here!', 'Attention');
    MessBox ('Hello', 'Message', mb_OK);


  • 相关阅读:
    ajax异步服务器获取时间
    JavaScript基本知识
    JavaScript使用button提交表单
    spring与hibernate整合
    Spring的事务属性
    注解方式实现Spring声明式事务管理
    svn的安装使用
    sbn
    恢复oracle中误删除drop掉的表
    ORA-20000: ORU-10027: buffer overflow, limit of 2000 bytes的解决办法
  • 原文地址:https://www.cnblogs.com/feiyunaima/p/5897011.html
Copyright © 2011-2022 走看看