2017-05-26 4 views
0

私が作業しているプロジェクトにブーストユニットを使用したいのですが、開始する前に、自分がしたいことが適切かどうかチェックしたいと思います。私はドキュメントとコードをチェックしましたが、私が必要とすることができることを私に保証する例はありません。私はプログラマーではなく、科学者であるため、この仕組みの詳細については熟知していません。マップごとにアイテムごとに異なる次元を設定できますか?

地図を使用して数量を保管していますが、その数量はさまざまな次元になります。しかし、量はディメンションやユニットに関連付ける必要があります。次のようなものがありますか?

map<string, quantity<>> parameters; // I don't know what to put here. Is there a class that represents a quantity without immediately specificying the dimension or unit? 

parameters["distance"] = 2 * meters; 
parameters["duration"] = 30 * seconds; 

quantity<velocity> v = parameters.at("distance")/parameters.at("duration"); 

私の目標は、最も一般的な数量の概念、つまり単位の値を持つマップです。 すべての例は、値と特定の単位を持つ数量を持っています。

+0

次元別に、タイプを意味しますか? 'parameters'に' T'の引数が異なる 'quantity 'を保存しようとしていますか? –

+0

'map ' – cdhowie

答えて

1

いいえ、ブーストユニットはコンパイル時のチェック用です。動的に選択されたオブジェクトは、この方法で簡単にチェックすることはできません。

マップの代わりに構造体を使用します。

+0

この場合は構造体を使うことはできませんが、これは間違った場所でユニットのチェックをしようとしていることに気付きます。ありがとうございました。 –

関連する問題