こんにちは、テンプレート関数の作成に助けが必要です (私が正しければ、c++ で知られているため)。私は Delphi XE2 を使用しており、MS Access データベースを使用してデータベース アプリケーションを作成しています。
問題は、異なるテーブルで同じことを行う関数がたくさんあることです。そのため、テンプレート関数を作成してから、さまざまなテーブルにさまざまなパラメーターを使用できると考えました。
たとえばLocate
、テーブルまたはクエリで特定のレコードを検索する関数があります。今、これのテンプレート機能を作りたいのですが、これを行う方法がわかりません。
関数をデータモジュールの公開セクションに入れたいので、この行で考えていました
function find(tableName: TADOTable, fieldName: String, fieldValue: String):Boolean
それで...
function TDataModule.find(tableName: TADOTable, fieldName: String, fieldValue:String): Boolean;
var SearchOptions : TLocateOptions;
begin
SearchOptions := [loCaseInsensitive];
find := DataModule.tableName.Locate('fieldName', fieldValue, SearchOptions);
end;
しかし、これはコンパイルしたくない...
任意のテーブルをパラメーターとして渡すことができる何らかのテンプレート関数を作成する方法はありますか、またはゲッター関数とセッター関数を使用して、すべてのテーブルのクラスを作成する方がよいでしょうか?