gpt4 book ai didi

c++ - 返回类型 std::optional>

转载 作者:可可西里 更新时间:2023-11-01 18:10:05 24 4
gpt4 key购买 nike

我遇到这样一种情况,函数必须返回从表中获取的值。此表中的单元格(假设该表正常工作...)可能包含值,也可能不包含值。该值也可以是以下几种类型之一:int, double, string, date (但没有其他类型)。

这样的函数会返回什么?返回 std::optional<std::variant<std::string, int, double, std::chrono::time_point>> 是个好主意吗? ?

这对 optional 有用吗?和 variant

最佳答案

我认为这是 std::monostate 的一个有用用途.具体来说,variant<std::monostate, int, double, std::string, std::chrono::time_point> . monostate对于 variant 的情况很有用可能不包含值。

使用实际类型而不是 optional<variant> 的好处是访问正常工作吗?您可以编写一个可以接受 monostate 的仿函数参数,从而允许您使用 visit对于甚至“空”变体。

关于c++ - 返回类型 std::optional<std::variant<...>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44052934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com