2012-11-10 38 views
0

我需要包含幾個(n)個不同浮點值的整數。2個值的容器(每個浮點數一個可操作整數)

  • 例如:爲浮點數1,465658我需要包含1號,我需要能夠操縱 隨時整數。

在C++中是否有一些容器,或者我必須做一些多維數組(如果是的話)?

類似於:float [1,465658] = 3; 新浮標[1,98978] = 0;

回答

1

std::map?只要你的鑰匙是獨一無二的。

std::map<double, int> myMap; 
myMap[1.2465468] = 1; 

要知道,你可能會遇到一些浮點舍入不精確取決於你的價值觀的粒度,你最終可能會覆蓋現有條目。

+3

對我來說,在一個'map'中對一個鍵使用一個浮點數是非常可怕的。 –

+1

爲什麼它很可怕?只要你不在地圖中放置任何NaN值,它就可以正常工作。 –

+0

我希望更多的其他方式,你插入一個新的密鑰,雖然你會想操縱一個現有的條目。 –