首页 文章

如何使用std :: map从模板中获取数据类型

提问于
浏览
0

我需要一个代码,需要使用std :: map并创建一个数据类型列表及其大小 . 例如 "BYTE" 表示 'unsigned char'"BOOL" 表示 'bool'"INT" 表示 'unsigned int' 等 .

我需要从用户那里获取的输入是字符串(数据类型名称),我需要创建列表 . 一旦用户请求特定数据类型的指针,我需要分配内存并将指针发回 .

我在C++ std::map of template-class values找到了一些东西 . 但我不知道如何初始化和使用它 . 有没有其他方法可以做到这一点 . (我是模板和std :: map用法的新手)

提前致谢 .

1 回答

  • 1

    我认为您需要的是提供一个良好的缓冲区,以及包装缓冲区和提供接口的内容 . 我通常使用std :: vector作为一个大缓冲区(就像来自Internet的网页),一旦签约,使用std :: vector :: data来访问指针 . 另一种方法是使用“新”运算符 . 您要传递的数据类型无关紧要 . 提供类型后,将自动计算大小 . 旧的malloc()函数也可以工作 . 你要记住的一件事是,在每一个“新”之后,应该有一个“删除” . 在每一个“malloc”之后,必须有一个“免费” . 接口可能只是一个void指针,尽管这样做并不安全 .

相关问题