STL 中有没有可以存放多种数据类型数据的数据结构

 我来答
志远823
2011-02-19 · TA获得超过2296个赞
知道小有建树答主
回答量:913
采纳率:66%
帮助的人:1181万
展开全部
STL 里没有直接提供这样的东西.我有两个方案供你选择:
1. 将你的多种数据结构描述为联合体union,
例如
struct unionval
{
int nType; // 表示union中的数据类型
uion myval
{
type1* typeval1;
type2* typeval2;
type3* typeval3;
}
}
考虑放入STL容器,比如
std::vector<unionval>;
当然你还需要开发配套的内存管理机制.现成的类似结构体也挺多的,比如ComVaraint.你可以参考一下.
2. 将boost::any与STL结合起来用,
比如
std::vector<boost::any> vecany;
vecany.push_back(10);
vecany.push_back("Name");
....任意的类型,但Any较为麻烦的是,将来取出内部值如果类型不对,容易崩溃.
dnlbq47
2011-02-19 · TA获得超过197个赞
知道答主
回答量:221
采纳率:0%
帮助的人:0
展开全部
建议你将书中的例子代码敲一遍,可能会遇到一些编译错误或者警告
先做到没有编译错误,之后在编译器的提示下解决编译器的警告,因为编译器的警告往往指出了潜在的危险

学一门开发语言,语法本身是基础,但是比较简单。然而要提高,就要涉及到应用,这种提高往往是跨越性的,一定程度上也代表了菜鸟和大师的区别

语法学习完成之后,建议你选择一款编译器,比如Visual C++,C++ Builder,Intel C++,GCC(MinGW)等
然后基于指定编译器尝试写算法或者软件,或者找一些数据结构和算法的书,写写代码,出现了问题,你就会清楚下一步该怎么办了!
比如:
实现一些经典数据结构,比如树,图,查找等,你会有什么思路?
写个常规病毒的专杀工具,你会使用什么思路,什么算法?
写个简单的进程管理器,你会有什么思路,什么算法?

建议性的提示,或许对你有些帮助!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangtk1982
2011-02-18 · TA获得超过3742个赞
知道大有可为答主
回答量:3206
采纳率:100%
帮助的人:1458万
展开全部
STL 中全是模板函数 你可以任意构造数据类型 然后使用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式