Files
Avancerad_CPP/Lab6/mapfake.cpp
2026-03-05 13:16:26 +01:00

49 lines
1.1 KiB
C++

template <class KeyType, class DataType>
Mapfake<KeyType, DataType>::Mapfake(){}
template <class KeyType, class DataType>
int Mapfake<KeyType, DataType>::getSize(){
return list.getSize();
}
template <class KeyType, class DataType>
DataType Mapfake<KeyType, DataType>::find(KeyType key)
{
int i=0;
if(list.getItem(0)->getKey() == key)
return list.getItem(0)->getData();
while(!list.isEmpty()) {
i++;
if(list.getItem(i)->getKey() == key)
return list.getItem(i)->getData();
}
return (DataType)0; // Just to supress compilerwarning
}
template <class KeyType, class DataType>
bool Mapfake<KeyType, DataType>::exist(KeyType key)
{
for(int i=0 ; i<list.getSize() ; i++) {
if(list.getItem(i)->getKey() == key)
return true;
}
return false;
}
template <class KeyType, class DataType>
bool Mapfake<KeyType, DataType>::add(KeyType key, DataType data)
{
Tuple *tuple;
tuple = new Tuple(key, data);
if(exist(key))
return false;
list.add(0, tuple);
return true;
}