Delphi コードを書く必要がありますが、Delphi の経験はありません。unit1
orとして知られるコードを書いてunit2
、その中のコードを使ってそれをインポートする人を見てきました。では、ユニットを Java または C# のクラスとして見ることはできますか?
質問する
1366 次
3 に答える
6
メイソンの答えに追加するには、一般的なユニット構造は次のようになります。
Unit UnitName;
interface
//forward declaration of classes, methods, and variables)
uses
//list of imported dependencies needed to satisfy interface declarations
Windows, Messages, Classes;
const
// global constants
THE_NUMBER_THREE = 3;
type // declaration and definition of classes, type aliases, etc
IDoSomething = Interface(IInterface)
function GetIsFoo : Boolean;
property isFoo : Boolean read GetIsFoo;
end;
TMyArray = Array [1..5] of double;
TMyClass = Class(TObject)
//class definition
procedure DoThis(args : someType);
end;
TAnotherClass = Class(TSomethingElse)
//class definition
end;
//(global methods)
function DoSomething(arg : Type) : returnType;
var //global variables
someGlobal : boolean;
implementation
uses
//list of imported dependencies needed to satisfy implementation
const
//global constants with unit scope (visible to units importing this one)
type
//same as above, only visible within this or importing units
var
//global variables with unit scope (visible to units importing this one)
procedure UnitProc(args:someType)
begin
//global method with unit scope, visible within this or importing units
//note no forward declaration!
end;
procedure TMyClass.DoThis(args : someType)
begin
//implement interface declarations
end;
function DoSomething(arg : Type) : returnType;
begin
// do something
end;
initialization
//global code - runs at application start
finalization
//global code - runs at application end
end. // end of unit
明らかに、すべてのユニットがこれらのセクションのすべてを必要とするわけではありませんが、これらは含めることができるすべてのセクションであると思います。私が最初に Delphi に足を踏み入れたとき、これらすべてを理解するのにしばらく時間がかかりましたが、おそらくこのようなマップでうまくいったので、役立つ場合に備えて提供します。
于 2013-06-14T22:30:50.457 に答える
2
Delphi の Unit、または C++ Builder のライブラリ内では、同時に複数のクラスを構築できます。Java 用の IDE は、1 つのファイルに対して 1 つのクラスを頻繁に使用します。これは、Delphi または C++ Builder とは異なりますが、Delphi または C++ Builder に対してもこの方法を実行できます。
各言語のクラスには、あなたの特徴があります。POO はすべて同じように考えることができますが、実装方法が異なります。
于 2013-06-15T23:08:30.893 に答える