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

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу создать карту, которая может содержать сопоставленные значения двух разных типов?

Сообщение Anonymous »

Мне нужно создать std::map для названий тем (std::string) и сообщения ros2. Как объявить std::map, то есть ref_maps?
std::map ref_maps;

// one type
msgType1 msg1_t; // = ...with some value assigned;
msgType1::SharedPtr msg1_p; //-> ...with some value assigned, and notice, here is a SharedPtr
std::string topic_name1 = "t1";

// another type
msgType2 msg2_t;
msgType2::SharedPtr msg2_p;
std::string topic_name1 = "t2";

ref_maps[t1] = std::make_tuple(msg1_t, msg1_p);
ref_maps[t2] = std::make_tuple(msg2_t, msg2_p);

Возможно ли это или есть ли какой-либо другой способ реализовать аналогичный результат?

Различны ли типы сообщений ros2 (и ::SharedPtr), наследуемый от некоторого базового класса, чтобы я мог объявить ref_maps следующим образом:
std::map ref_maps;


Подробнее здесь: https://stackoverflow.com/questions/786 ... rent-types
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»