替换OMUMap中的元素(IBM Rational Rhapsody)

时间:2016-07-19 09:45:41

标签: c++ visual-c++ rhapsody

我想用新值覆盖与键对应的元素。 我可以使用什么功能?

我试着通过调用有趣的方式

myMap.add(key, value)

但这并不是取代已存储在地图中的值。

1 个答案:

答案 0 :(得分:0)

add()应该有效,这是一个例子:

OMUMap myMap;
char key1[] = "key-1";
char key2[] = "key-2";

/* initialize map */
myMap.add(static_cast<void*>(key1), static_cast<void*>("foo"));
myMap.add(static_cast<void*>(key2), static_cast<void*>("bar"));

std::cout << key1 << ": " << static_cast<char*>(myMap.getAt(key1)) << std::endl;
std::cout << key2 << ": " << static_cast<char*>(myMap.getAt(key2)) << std::endl;

/* replace 'key-1' value */                    
myMap.add(static_cast<void*>(key1), static_cast<void*>("bazzz"));

std::cout << key1 << ": " << static_cast<char*>(myMap.getAt(key1)) << std::endl;
std::cout << key2 << ": " << static_cast<char*>(myMap.getAt(key2)) << std::endl;

输出:

key-1: foo
key-2: bar
key-1: bazzz
key-2: bar