如何获取变量向量中元素的索引?

时间:2020-04-07 05:20:21

标签: c++ vector variant static-cast

在一个vector<variant<T1,T2>> vec中,我有一个T1& elem。我想找到索引vec,使得iget<T1>(vec[i])

但是我不确定这是否合法:

elem

即使auto const p = static_cast<std::variant<T1,T2> const*>(&elem); // 1 auto const i = static_cast<std::size_t>(p - vec.data()); // 2 成立,我也不确定// 1中的静态类型转换是否合法。


编辑:从下面的讨论中,这个问题可以归结为:我如何以符合标准的方式行holds_alternative<T1>(vec[i])

0 个答案:

没有答案
相关问题