在delphi中看到过如下这些地方有定义变量,他们有哪些具体的区别呢?unit App;interfaceuses
  ......type
  ......
  private
    int1:Integer;
  public
    int2:Integer;
  end;var
  int3:integer;implementation
uses
  ......
var
  int4:integer;我想这些应该都是全局变量吧,1和2应该分别是私有和公有的吧
主要是3和4的区别

解决方案 »

  1.   

    1和2并不是全局变量,应该是一个类的成员变量(你在private前少写了 TMyClass = class)。它们不能直接访问,只有在创建了这个类的对象后才能这样访问:Object.int2;
    而1与2的区别是1只有在这个单元中的代码才能访问,而2则任何单元中的代码都能访问(只要它能访问某个这个类的对象)。
    3和4都是全局变量,3可以被引用了这个单元的所有单元访问,而4只能在这个单元访问。
      

  2.   

    3可以被其它文件使用,只要use App即可
    4只能在App单元中使用