views:

38

answers:

2

hi i'm doing a program that needs high performance of handling vector elements

vector<Class_A> object ;

1- which one is fastest to access the elements 2- which is more code simpler and not complex to deal with

index ? iterator ? pointer ?

A: 

Assuming you have inlining enabled, and arent doing index range checking, they will probably all be about the same. Besides micro optimizing this probably isn't going to gain you anything, you need to optimize globally. profile your process and target the slowest parts first

jk
+1  A: 

An iterator or pointer will have the same performance on most implementations -- usually a vector iterator is a pointer. An index needs to calculate a pointer each time, but the optimizer can sometimes take care of that. Generally though, as another commenter said, there's no sense in optimizing this for performance.

All of that said, I would probably go with an iterator since it's easier to change to another type of container if need be.

Joel
thanks i thought there would be high difference in performance
ismail marmoush