データベースとやり取りするためのコードを書いています。私の解決策は、さまざまな構造体のベクトルを使用して、データベース内の各テーブルを表すことです。データベース クラス内にテンプレートを作成して、ベクターを push_back し、新しい (空白の) 行を挿入したいと考えています。ただし、「push_back(...)」の中に何を入れるかわかりません。次のようなものは理にかなっていますが、機能していません。後でクラス内のベクトルを操作できるように、キーが返されます。
template <class T> void Database::newRecord(T& Type, int& key)
{
Type.push_back(Type.value_type());
key = Type.size()-1;
Type[key].PK = key;
}
以下を使用してルーチンを呼び出します。
vector<table_row> table;
int key;
newRecord(table, key);
table[key]...
構造体は次のようになります。
struct table_row {
int PK;
....
};
ありがとう!