Как я могу сохранить пару чисел в C++?

Я не думаю, что есть что-то нестандартное, но у вас есть варианты, в зависимости от вашей мотивации.

Ваше приложение ищет json, и карта конфигурации смонтирована так, чтобы приложение считывало этот json. Ваше развертывание руля не собирается изменять сам контейнер. Но вы можете изменить свое приложение, чтобы читать yaml вместо json.

Если вы хотите иметь возможность легко видеть версии yaml и json, вы можете создать два файла конфигурации - один, содержащий yaml, а другой с json.

Или, если вы просто хотите увидеть, какой yaml был использован для создания карты конфигурации, вы можете использовать helm get values для просмотра значений создать этот выпуск (который будет включать в себя содержание записи conffiles).

25
задан Soo Wei Tan 2 May 2012 в 21:04
поделиться

3 ответа

В то время как std :: pair является лучшим подходом для использования, я удивлен, что никто не упомянул решение pre-stl:

struct Pair {
    int first;
    int second;
};

Вызывает беспокойство, что люди думают, что им нужна поддержка для такой тривиальной проблемы .

9
ответ дан shura 28 November 2019 в 18:29
поделиться

Используйте STD :: Pair?

#include <utility>
#include <iostream>

int main() {
    std::pair <int, int> p = std::make_pair( 1, 2 );
    std::cout << p.first << " " << p.second << std::endl;
}

Вы можете сделать вектор пар:

typedef std::pair <int, int> IntPair;

...

std::vector <IntPair> pairs;
pairs.push_back( std::make_pair( 1, 2 ) );
pairs.push_back( std::make_pair( 3, 4 ) );
19
ответ дан 28 November 2019 в 18:29
поделиться

Посмотрите на std::pair

EDIT:

Это стандартный C++ и часть того, что известно как STL (стандартная библиотека шаблонов). Это набор красивых структур данных, которые являются общими (т.е. могут быть использованы для хранения любого типа объектов C++). Эта конкретная структура используется для хранения "кортежа" или пары чисел вместе. В основном это объект с членами "первый" и "второй", которые относятся к первому и второму объектам (любого типа!), которые вы в них храните.

Так что просто объявите массив из пары int, int>, или еще лучше, используйте другой тип STL, называемый "вектор", чтобы составить динамически размерный список из пары int, int>: vector > myList.

Эй, что ты знаешь! Динамически размер списка пар уже существует и называется map! Использовать его так же просто, как #include и объявить map myMap!!!

EDIT:

Да, как было указано, карта хорошо "картирует" один объект на другой, так что вы не можете иметь повторяющиеся значения левой стороны. Если это нормально, то карта - это то, что вы ищете, иначе придерживайтесь вектора пары.... или посмотрите на мультикарту.

std::map, std::multimap

31
ответ дан 28 November 2019 в 18:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: