背景を少し説明すると、Customer、Tours、Hires の 3 つのメイン クラスがあります。
Customer は、コンストラクターに顧客名、顧客 ID などの基本的な顧客データを持ちます。
GuidedTours の基本クラスである Tour にも同様のデータがあります。
Hires は、顧客がレンタルできる機器の詳細を持つクラスです。
主な質問
これらすべてのクラスのデータを大きなテキスト ファイルから読み取り、基本的にそれらをさまざまなデータ構造 Map、List、Vector に格納して、これらすべてのデータ構造のパフォーマンス バウンド チェックを行う必要があります。
だから私はそれが働いているのを見ることができますが、私を最も混乱させている部分は、さまざまなオブジェクトを初期化する方法です
1 メインから読み取る場合は、次のように行をトークン化します
。このメソッドでは、ツアーに「addtoMap」という関数を追加し、データ構造を実装します。main.cpp 側では、すべてのツアー ポインターをベクターに保存します。 . デフォルトの Tour() コンストラクターでデータ構造を初期化する必要がありますか。
そして、これは良いプログラミングの実践ですか?また、グラフィカルなプレゼンテーションと異なる構造間の偏差を示すことができるように、すべてのデータ構造に時間を費やす必要がありましたが、すべてのツアー、顧客、雇用ポインターを main.cpp に格納するためにベクターを使用します。パフォーマンスへの重大な影響。
Tour *newtour = new Tour();
newTour.addtoMap(tokenise, data, will, go, here);
2
Tour *newtour = new Tour(tokenised, data, goes, here);
このように次のようにすると、値をコンストラクターに渡すので、そのコンストラクターで Map 実装を実行する必要がありますが、これは良くないと感じます。
これについて他に方法はありますか?私はこの方法が好きですが、そのデータを保存するためにマップを実装する方法と場所を視覚化できませんか?
私はC ++を初めて使用します。そのようにする理由は、OOP方法論をサポートすることです。他に方法があれば、私はそれを受け入れます。
同様の問題を抱えた別のスレッドを見たことがありますが、彼は 3.8GB のデータ ファイルを持っていました。