社区
C++ 语言
帖子详情
探讨一个stl 题目:
ilovevc
2005-01-22 08:49:12
探讨一个题目:
一个 std::vector<int> vec; 需要插入几个int,例如3,1,4,1,5,9(也就是没有任何规律)
如果不将这些元素定义预先定义在一个int []数组中,哪样写最方便?
...全文
196
12
打赏
收藏
探讨一个stl 题目:
探讨一个题目: 一个 std::vector vec; 需要插入几个int,例如3,1,4,1,5,9(也就是没有任何规律) 如果不将这些元素定义预先定义在一个int []数组中,哪样写最方便?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
playmud
2005-01-23
打赏
举报
回复
vector吧,省事省心。
ilovevc
2005-01-23
打赏
举报
回复
我现在知道的最方便的做法是:
vector<int> v;
back_insert_iterator< vector<int> > it(v);
*v++ = 1;
*v++ = 2;
*v++ = 3;
*v++ = 4;
copy(v.begin(), v.end(), ostream_iterator<int>(cout));
显示 1 2 3 4
useresu
2005-01-23
打赏
举报
回复
不知道我说的使用文件算不算是解决不预先定义数组问题的一种方法,
我也想过这个问题的解决方法,
如果楼主想到了更好的方法,一定贴出来供大家学习啊。
useresu
2005-01-23
打赏
举报
回复
如果知道数组的大概范围,最好使用vector之前,最好声明其长度。
vector<int> vec(n);
当然你觉的不够,还可以重新增加,
但是这样总比开始就一个一个增加效率要高。
赋值的话,似乎没什么好的方法,这也算是STL的一个小问题吧。
因为开始如果声明vector长度为n的话,编译器会按照你的类型赋相应的零值。
如果如楼主所说没什么规律,
那么你只能通过数组吧,要不你就每个元素均写一次,那样似乎更麻烦,
其实这种情况用的不多吧,
小的数据量,如果仅是楼主给出的情形,用数组就足够了。不必使用vector.
大的数据量,一般要存成文件的,从文件读,就可以不用数组了。这也算是用文件初始化vector吧
idau7
2005-01-23
打赏
举报
回复
就是刚开始写法麻烦点儿哦.
std:vector<int> myarray;
myarray.push_back(你的数字);
就好了啊,比较方便啊.
idler
2005-01-23
打赏
举报
回复
还是push_back比较顺手。
idler
2005-01-22
打赏
举报
回复
vector以后加元素没问题啊。
ilovevc
2005-01-22
打赏
举报
回复
我有时候觉得定义一个数组来初始化一个vector比较繁琐,想简单些。这个vector当然以后还要加元素的,不能是c array。
whoho
2005-01-22
打赏
举报
回复
没什么好办法吧
pengzhenwanli
2005-01-22
打赏
举报
回复
其实际就一个问题。你的这个数组是不是大小确定的。
不确定vector
确定的用数组就好了
idau7
2005-01-22
打赏
举报
回复
vector当然可以了.你可以把它当成一个扩展了数组来用,还有附在在迭代器(iterator)上的算法,可以排序啊之类的.
楼上说的意思是说如果你涉及到元素类型不是内建的时候,用 int []比较适合.
其实,如果你要不断分配内存给int[]的话,就是说当你输入数据数目未知的时候, 同样考虑vector
我也看不穿
2005-01-22
打赏
举报
回复
说出你的目的
一般情况当然是用int []数组最方便
如果你实现不知道内容,内容是用表达式或函数获得的可以用STL算法
STL
源码剖析 基本算法 <
stl
_algobase.h >
这个头文件,不是
题目
中的<
stl
_algobase.h > equal函数 如果两个序列在[firsLlast) 区间内相等,equal()返 回 true.如果第二序列的元素比较多,多出来的元素不予考虑。因此,如果我们希望保证两个序列完全...
c++
STL
库最详细介绍(保姆级教学)
STL
最全教程,适合新老手呀
STL
之父Alexander Stepanov访谈录
STL
之父Alexander Stepanov访谈录 翻译者 : myan 出处:http://www.sgi.com/technology/
STL
1995年3月,dr.dobb's journal特约记者, 著名技术书籍作家al Stevens采访了
STL
创始人Alexander Stepanov. 这份访谈纪录...
STL
笔记(2)
STL
之父访谈录
出处: http://www.sgi.com/technology/
stl
1995年3月... 这份访谈纪录是迄今为止对于
stl
发展历史的最完备介绍, 侯捷先生在他的
stl
有关文章里推荐大家阅读这篇文章. 因此我将该文全文翻译如下:q: 您对于generic pro...
深入
探讨
JavaScript 中的继承:实现继承的五种经典
class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 *我看流程,技术面之后就是测评,然后hr面技术面一开始让我说英语,我
一个
字母都没崩出来,都过了现在...
C++ 语言
64,282
社区成员
250,470
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章