【发布时间】:2021-10-19 04:46:57
【问题描述】:
我想知道是否有可能以某种方式从函数返回自定义结构。
实际用例:我有一个字符串形式的字典,由一些分隔符分隔。例如:FIX 消息:“8=FIX.4.4,8=MKT...”,在解析此消息时,我希望提取这些键值对,理想情况下以结构形式:{8:FIX. 4.4..},我可以为所有消息设置一个通用函数吗?什么数据结构可以是可能的返回类型?
用例似乎适合地图,但由于所有值的类型可能不同,我排除了它。我想获取它们各自类型的数据,即int为int,string为string,看到key我可以预先确定预期的类型,例如:34预期为整数,8预期为字符串等. 如果你们能分享你们的任何想法,那就太好了。
提前致谢!
【问题讨论】:
-
std::vector<:pair int>> fooFunction(std::pair
input); -
不太清楚问题是什么或您要问什么。您想根据某些条件从同一个函数返回不同的类型吗?然后你需要某种类型的擦除,比如
std::any或std::variant。但是,如果您解释您的用例,可能会有更好的选择。 -
但由于所有值的类型可能不同请澄清。听起来它们至少可以表示为字符串。因此,如果您有其他想法,您应该解释它而不是让我们猜测。我猜你想要的不是
std::map<int, std::string>? -
我想获取它们各自类型的数据,即int as int,string as string,看到关键我可以预先确定预期的类型@ΦXocę웃Пepeúpaツ
标签: c++ function data-structures struct return-type