2016-04-26 10 views

答えて

2

いいえ、あなただけ定義することができます。

  • 構造(recordキーワード) - フィールドだけ、と
  • インターフェース(interfaceキーワード) - 抽象メソッドのみ - COM/ActiveXのために。

しかし、クラス(フィールドとメソッド)を実装することはできません。

パスカルスクリプトでは、classというキーワードも認識されません。


unitもありません。 Inno Setup Pascal Scriptは単なるコードブロックです。いくつかの実装/コードを隠そうとすることは実際にはありません。


あなただけ何とかコードを整理したい場合は、ファイルにコードを分割するInno Setup pre-processor#include directiveを使用することができます。

prototypes/forward declarationsの「パブリック」関数/プロシージャと実装および「プライベート」関数/プロシージャの実装のようなファイルを持つヘッダー/インターフェイスのようなファイルを持つことができます。

インターフェースのようなファイル(header.iss言う):

procedure PublicProc; forward; 

実装のようなファイル(impl.iss言う):

procedure PrivateProc; 
begin 
    ... 
end; 

procedure PublicProc; 
begin 
    PrivateProc; 
end; 

など、それを使用します。

[Code] 

#include "header.iss" 

function InitializeSetup: Boolean; 
begin 
    { Here we can use the PublicProc, but not PrivateProc } 
end; 

#include "impl.iss" 
+0

ありがとうございました。ユニットについて何か知っていますか?またはカプセル化の概念に近いもの(dllを埋め込む必要はありません)? – user2233601

関連する問題