|
|
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Добрый день! Не пойму, как правильно сделать? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 13:12 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Это хотели? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 13:17 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Тогда в ф-и const не нужен, но можно Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Ф-я f() не моя, как в неё итератор передать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 13:26 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
DronordФ-я f() не моя, как в неё итератор передать? да так и передавать: f(i) - итератор-же суть указатель :)) - ну т.е. нечто, работающее как указатель ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 13:57 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
gcc 3.4.6 говорит нет подходящей функции, а static_cast<const int *>( i ) не может сконвертить. Ниразу не встречал конструкции &(*i), может это и нормально. =\ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 15:07 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Dronordgcc 3.4.6 говорит нет подходящей функции, а static_cast<const int *>( i ) не может сконвертить. Ниразу не встречал конструкции &(*i), может это и нормально. =\ В этом случае вы передаете не иттератор, а указатель на элемент. Это конструкция, вполне, нормальная, т.к. *i возвращает вам значение по ссылке, а далее вы получаете на него указатель. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:02 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
DronordТогда в ф-и const не нужен для вас не нужен. Это вам говорит только лишь о том, что значения по этому указателю не изменятся. Он нужен для самой функции, что бы компилятор проводил проверки. Допустим программист случайно изменяет значения. Тогда компилятор ему сообщит об этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:04 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Akh , const не нужен в Вашем листинге, где Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:09 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Коллеги, ещё вопрос. Итератор же быстрее доступа по индексу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:12 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Dronord Akh , const не нужен в Вашем листинге, где Код: plaintext Тогда верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:23 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
DronordКоллеги, ещё вопрос. Итератор же быстрее доступа по индексу? Думаю зависит от реализации. Во всяком случае не медленнее будет инкремент указателя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:25 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:42 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Dronord Ф-я f() не моя, как в неё итератор передать? Можно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:48 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
батрак , нельзя. Ф-я не моя! =) Т.е. не могу её изменить. Так бы, конечно, у меня было бы Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:55 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Dronord Код: plaintext Ну и к чему эта лишняя косвенность? Лучше бы по значению передал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 16:59 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Коллеги, проблема решена. Спасибо Akh 'у. blinded, у меня не int, а здоровенный объект, потому там указатель, а в моем последнем листинге ссылка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 17:03 |
|
||
|
C++ итератор как параметр функции
|
|||
|---|---|---|---|
|
#18+
Dronord wrote: > Добрый день! > > Не пойму, как правильно сделать? > #include <iostream> > #include <vector> > > void f( const int *i ) > { > std::cout << *i << std::endl; > } > > int main() > { > std::vector<int> v; > v.push_back(1); > std::vector<int>::const_iterator i = v.begin(); > f( &(*i) ); > return 0; > } Насколько я понимаю, вот так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. передавать нету смысла. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 17:13 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34608559&tid=2028639]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
170ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 212ms |
| total: | 502ms |

| 0 / 0 |
