c++ - 指向两种不同类型 vector 的指针

标签 c++ pointers vector

是否可以创建一个指向 vector<char> 的指针或vector<foo> ?这取决于处理的数据。如果它说它将是 chars 或需要是 foo。 foo 是一个类。

最佳答案

有一些方法可以安全地做到这一点。例如,您可以使用 boost::any 或类似工具。它不会是一个指针,但我假设,您不需要单个指针,您需要一个对象,根据情况可以是这样或那样。

虽然我通常不喜欢变量可以做任何事情,但我知道有些人觉得它很有用。

编辑

正如评论中正确指出的那样,从问题来看,boost::variant可能更适合 - 因为在所有可能的类型都预先知道的情况下。它也可能执行得更快。

关于c++ - 指向两种不同类型 vector 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35039799/

相关文章:

c++ - 单元测试项目的物理布局是什么?

c++ - C++17 中已弃用的 auto_ptr 的替代库/模板类

c++ - Bruce Eckel 的 Thinking in C++ 中指向成员的指针

c++ - 无法使用 Fedora 中的 g++

C++ 错误 : cannot convert ‘std::basic_string<char>’ to ‘const char*’

c - 如何使用c编程将值存储到某个特定的内存地址

c - 链表-1 将节点添加到前面

C++ 我可以从方法返回本地 vector 上的迭代器吗?

r - 在 R 中,按特定字符分割字符向量;将第三 block 保存在新向量中

c++ - 将整数行直接读入 vector