vector
* vector是c++的一个模板容器,同时也是一个动态数组,是数组就意味着它支持随机访问。
* 它几乎与arraylist一样,但vector是线程安全的,因此vector的性能比arraylist弱。
* 使用时需要#include <vector>
注意
- 指向vector里面的元素的指针是迭代器iterator,而不是一般的变量的那个星号*。
- back():返回最后一个元素的引用。
- end(): 返回的迭代器不可用,它返回的是指向最后一个元素的下一位置,因此想要访问最后一个元素,应该写end()-1,或使用back()。
- 当vector内没有元素时,begin()和end()的返回值一样。
- 注意对迭代器的运算顺序
- 末尾两行如果执行会在运行时报错:
- cannot seek vector iterator before begin
- 即迭代器移动越界了
- 末尾两行如果执行会在运行时报错:
vector<int> arr;
for (int i = 10; i--;) //向vector压入数据
arr.push_back(i);
vector<int>::iterator it_p = arr.begin();//获取vector第一个的迭代器
for (; it_p < arr.end(); ++it_p)//依次顺序输出
cout << *it_p << " ";
cout << arr.back() << endl; //输出最后一个元素的值
it_p = arr.begin();
it_p += 4; //把迭代器移动4个位置
cout << *(it_p - 3) << endl; //不会报错
//cout << *(it_p - 6 + 3) << endl;//如果编译器有优化提前计算出了结果-3,则不会报错
int a = 6, b = 3;
//cout << *(it_p - a + b) << endl;//会报错
- -
- 运行结果:
- -
- 在末尾的两行,it_p本来是指向第5个位置(下标为4),此时(it_p - 6 + 3)先算 it_p - 6 则会因为越界而在运行时报错。尽管它最终的结果等同于it_p - 3 是不会越界的。最后一句也是如此。
- 解决方法当然也很简单,把后面的数值计算加个括号,注意符号可能需要改变
- 如 (it_p - 6 + 3)改为(it_p - (6 - 3))或(it_p + (3 - 6))
- 同理(it_p - a + b)改为 (it_p - (a - b)) 或 (it_p + (b - a))
- 当然vector是动态数组,是可以用[]随机访问的,即支持arr[-6 + 7],这样写是没有问题的,它会先计算最终结果(-6 + 7)= 1。
Whereas the former is situated within the Himalayas and is house to the Bengal Tiger, Sariska additionally provides dense forests rich in animal life akin to Indian Porcupine, Striped Hyena,Indian Peafowl, Indian Palm Civet, and a variety of deer.
Spot on with this write-up, I really feel this amazing site needs much more attention. I’ll probably be back again to see more, thanks for the info.
It’s difficult to find experienced people for this subject, however, you seem like you know what you’re talking about! Thanks
This is a topic that is close to my heart… Take care! Where are your contact details though?
Good post. I learn something new and challenging on blogs I stumbleupon on a daily basis. It’s always helpful to read content from other authors and use a little something from other sites.
You have made some decent points there. I looked on the net to find out more about the issue and found most individuals will go along with your views on this website.
Hey there! Do you know if they make any plugins to assist with Search
Engine Optimization? I’m trying to get my blog to rank for some targeted keywords but
I’m not seeing very good results. If you know
of any please share. Thank you! You can read similar art here: Wool product
Hey there! Do you know if they make any plugins to assist with SEO?
I’m trying to get my site to rank for some targeted keywords but I’m not seeing very good success.
If you know of any please share. Many thanks! You can read similar art here:
Eco product
Oh my goodness! Amazing article dude! Many thanks, However I am encountering troubles with your RSS. I don’t understand why I am unable to subscribe to it. Is there anybody else having identical RSS issues? Anyone that knows the solution can you kindly respond? Thanx.
Great information. Lucky me I discovered your site by chance (stumbleupon). I have saved as a favorite for later!
There’s certainly a lot to find out about this subject. I like all the points you made.
I was pretty pleased to uncover this web site. I need to to thank you for your time just for this fantastic read!! I definitely loved every bit of it and I have you bookmarked to look at new information on your web site.
You need to be a part of a contest for one of the most useful websites online. I’m going to highly recommend this site!
Good web site you have got here.. It’s difficult to find high-quality writing like yours nowadays. I honestly appreciate people like you! Take care!!
Having read this I believed it was very enlightening. I appreciate you spending some time and effort to put this article together. I once again find myself personally spending way too much time both reading and leaving comments. But so what, it was still worthwhile!
I like it when people get together and share thoughts. Great site, continue the good work!
It’s hard to come by educated people about this topic, however, you sound like you know what you’re talking about! Thanks
Hi there! Do you know if they make any plugins to assist with SEO?
I’m trying to get my site to rank for some targeted keywords but I’m not seeing very good gains.
If you know of any please share. Thank you! You can read similar article here:
Bij nl
I was extremely pleased to uncover this site. I want to to thank you for your time just for this wonderful read!! I definitely enjoyed every part of it and i also have you bookmarked to look at new information on your website.
https://suncity888.dad/
Can I simply just say what a comfort to find somebody who genuinely understands what they are discussing on the internet. You definitely know how to bring a problem to light and make it important. More and more people have to check this out and understand this side of the story. I was surprised that you’re not more popular because you definitely have the gift.
When I initially left a comment I seem to have clicked on the -Notify me when new comments are added- checkbox and now every time a comment is added I get four emails with the exact same comment. There has to be an easy method you can remove me from that service? Thank you.
Right here is the perfect web site for everyone who would like to find out about this topic. You realize a whole lot its almost hard to argue with you (not that I really will need to…HaHa). You certainly put a fresh spin on a topic which has been written about for a long time. Wonderful stuff, just wonderful.
Uncovering Sugar Protector has actually been a game-changer for me, as I
have actually always been vigilant concerning managing
my blood sugar degrees. With this supplement, I feel empowered to organize my
health, and my latest clinical examinations have actually shown a significant
turnaround. Having a credible ally in my edge offers me
with a complacency and peace of mind, and I’m deeply thankful for the profound difference Sugar Defender
has actually made in my health.
Incorporating Sugar Defender right into my daily routine has been a
game-changer for my general wellness. As somebody who
already focuses on healthy and balanced consuming,
this supplement has actually provided an added increase
of protection. in my power degrees, and my need for unhealthy
treats so easy can have such an extensive impact on my day-to-day live.
Incorporating Sugar Defender into my day-to-day regimen has been a game-changer for my general well-being.
As someone who currently prioritizes healthy and balanced eating, this supplement has
given an included increase of defense. in my energy degrees,
and my wish for undesirable treats so easy can have such a profound effect on my
day-to-day live.
For years, I have actually battled unpredictable blood glucose swings
that left me really feeling drained and lethargic.
But since including Sugar Protector right into my regular, I have actually discovered a substantial enhancement in my general energy and stability.
The feared mid-day thing of the past, and I appreciate that this
all-natural solution achieves these results with no unpleasant or damaging reactions.
truthfully been a transformative discovery for me.
Adding Sugar Protector to my daily routine was just one of the best decisions I
have actually produced my health. I’m careful about what
I eat, yet this supplement includes an extra layer of assistance.
I really feel more constant throughout the day, and my yearnings have
actually decreased dramatically. It behaves to have something
so basic that makes such a large distinction!
A fascinating discussion is worth comment. I think that you need to write more about this subject matter, it may not be a taboo matter but typically people don’t talk about these topics. To the next! Best wishes.
I needed to thank you for this great read!! I certainly loved every bit of it. I have you book-marked to look at new stuff you post…
Can I simply say what a relief to find someone who truly knows what they are talking about over the internet. You certainly understand how to bring a problem to light and make it important. More people must check this out and understand this side of your story. I was surprised you are not more popular given that you surely possess the gift.
Great post. I’m facing many of these issues as well..
That is a good tip particularly to those fresh to the blogosphere. Simple but very accurate information… Many thanks for sharing this one. A must read post!
I blog quite often and I genuinely thank you for your content. This article has really peaked my interest. I am going to bookmark your website and keep checking for new information about once a week. I opted in for your Feed as well.
This is a topic that is near to my heart… Many thanks! Where are your contact details though?
I have to thank you for the efforts you’ve put in writing this website. I’m hoping to view the same high-grade blog posts from you in the future as well. In fact, your creative writing abilities has motivated me to get my own website now 😉
Hi there! This article couldn’t be written much better! Going through this post reminds me of my previous roommate! He always kept talking about this. I am going to send this information to him. Pretty sure he’ll have a very good read. Thanks for sharing!
Spot on with this write-up, I honestly believe that this amazing site needs a lot more attention. I’ll probably be back again to read through more, thanks for the information!
After looking over a few of the blog articles on your website, I honestly appreciate your way of writing a blog. I bookmarked it to my bookmark website list and will be checking back soon. Please visit my web site as well and tell me what you think.
I was very pleased to uncover this web site. I need to to thank you for your time due to this fantastic read!! I definitely savored every bit of it and I have you book marked to look at new stuff on your site.
An outstanding share! I have just forwarded this onto a friend who was conducting a little research on this. And he actually ordered me dinner due to the fact that I stumbled upon it for him… lol. So let me reword this…. Thanks for the meal!! But yeah, thanks for spending time to discuss this topic here on your blog.
Hi there! I just would like to offer you a huge thumbs up for the great information you’ve got right here on this post. I’ll be returning to your website for more soon.
An intriguing discussion is worth comment. I do think that you ought to write more on this subject, it may not be a taboo matter but generally folks don’t speak about such issues. To the next! Many thanks!
Greetings, I think your site might be having browser compatibility problems. Whenever I take a look at your web site in Safari, it looks fine however, when opening in IE, it’s got some overlapping issues. I merely wanted to give you a quick heads up! Aside from that, wonderful blog!
Great site you’ve got here.. It’s hard to find high quality writing like yours these days. I honestly appreciate individuals like you! Take care!!
Your style is very unique compared to other folks I’ve read stuff from. I appreciate you for posting when you have the opportunity, Guess I will just bookmark this blog.
I couldn’t resist commenting. Well written.
Hi! I could have sworn I’ve been to your blog before but after going through some of the articles I realized it’s new to me. Regardless, I’m certainly happy I found it and I’ll be bookmarking it and checking back often.
Next time I read a blog, I hope that it won’t fail me as much as this particular one. I mean, I know it was my choice to read, however I truly thought you would probably have something helpful to talk about. All I hear is a bunch of crying about something you could fix if you were not too busy seeking attention.
Good article. I absolutely love this site. Thanks!