История изменений
Исправление asaw, (текущая версия) :
https://troydhanson.github.io/uthash/userguide.html При этом строки со структурами буду укладывать в один блок памяти, полностью избегу копирования, а если жизнь потребует, еще и память могу по-особому выделять. Шах и мат!
Давай ты мне не сказки будешь рассказывать, а просто приведешь работающий аналог на C.
#include <iostream>
#include <string>
#include <unordered_map>
#include <utility>
struct S
{
int i;
std::string s;
};
int main()
{
std::unordered_map<std::string, S> m;
m.emplace(std::make_pair<std::string, S>("one", {1, "cat"}));
m.emplace(std::make_pair<std::string, S>("two", {2, "dogs"}));
m.emplace(std::make_pair<std::string, S>("three", {3, "cows"}));
for (auto& p : m) {
std::cout << p.first << " (" << p.second.i << ") " << p.second.s<< std::endl;
}
}
DELIRIUM может присоединиться.
Исходная версия asaw, :
https://troydhanson.github.io/uthash/userguide.html При этом строки со структурами буду укладывать в один блок памяти, полностью избегу копирования, а если жизнь потребует, еще и память могу по-особому выделять. Шах и мат!
Давай ты мне не сказки будешь рассказывать, а просто приведешь работающий аналог на C.
#include <iostream>
#include <string>
#include <unordered_map>
#include <utility>
struct S
{
int i;
std::string s;
};
int main()
{
std::unordered_map<std::string, S> m;
m.emplace(std::make_pair<std::string, S>("one", {1, "cat"}));
m.emplace(std::make_pair<std::string, S>("two", {2, "dogs"}));
m.emplace(std::make_pair<std::string, S>("three", {3, "cows"}));
for (auto& p : m) {
std::cout << p.first << " (" << p.second.i << ") " << p.second.s<< std::endl;
}
}