Информация об изменениях

Сообщение Реализовать класс индекса от 17.11.2021 11:15

Изменено 17.11.2021 12:30 avovana

Re: Реализовать класс индекса

// Требуется реализовать класс индекса, для хранения данных по 3-м вложенным текстовым ключам
//
//     index["key1"]["key2"]["key3"] = data;
//
// в последнем уровне индекса содержатся данные объект класса Data
//
// Пример заполнение данных по ключам выглядит так:
//
//  Data  data1, data2;
//  Index idx;
//  idx.set("key1").set("key2").set("key3").set(data1);
//  idx.set("key1.1").set("key2.1").set("key3.1").set(data2);
//
// Пример доступа к данным по ключам:
//
//  data1 = idx.get("key1").get("key2").get("key3").get();
//
// в реализации предусмотреть раcширение глубины индексов


class Data {
};

class Index {
};


int main()
{
    Data data1, data2, data3;
    Index idx;
    
    // добавление в индекс
    
    //idx.set("key1").set(data1);
    
    idx.set("key1").set("key2").set("key3").set(data1);
    idx.set("key1.1").set("key2.1").set("key3.1").set(data2);
    idx.set("key1.2").set("key2.2").set("key3.2").set(data3);
    
    // получение данных из индекса
    
    data1 = idx.get("key1").get("key2").get("key3").get();
    data2 = idx.get("key1.1").get("key2.1").get("key3.1").get();
    data3 = idx.get("key1.2").get("key2.2").get("key3.2").get();

    return 0;
}
Реализовать класс индекса

// Требуется реализовать класс индекса, для хранения данных по 3-м вложенным текстовым ключам
//
//     index["key1"]["key2"]["key3"] = data;
//
// в последнем уровне индекса содержатся данные объект класса Data
//
// Пример заполнение данных по ключам выглядит так:
//
//  Data  data1, data2;
//  Index idx;
//  idx.set("key1").set("key2").set("key3").set(data1);
//  idx.set("key1.1").set("key2.1").set("key3.1").set(data2);
//
// Пример доступа к данным по ключам:
//
//  data1 = idx.get("key1").get("key2").get("key3").get();
//
// в реализации предусмотреть раcширение глубины индексов


class Data {
};

class Index {
};


int main()
{
    Data data1, data2, data3;
    Index idx;
    
    // добавление в индекс
    
    //idx.set("key1").set(data1);
    
    idx.set("key1").set("key2").set("key3").set(data1);
    idx.set("key1.1").set("key2.1").set("key3.1").set(data2);
    idx.set("key1.2").set("key2.2").set("key3.2").set(data3);
    
    // получение данных из индекса
    
    data1 = idx.get("key1").get("key2").get("key3").get();
    data2 = idx.get("key1.1").get("key2.1").get("key3.1").get();
    data3 = idx.get("key1.2").get("key2.2").get("key3.2").get();

    return 0;
}