27 / 27 / 4
Регистрация: 02.11.2010
Сообщений: 370
|
|
1 | |
Массив: Что быстрее: mass[n] или *(mass+n)?10.07.2012, 14:58. Показов 6639. Ответов 51
Метки нет (Все метки)
0
|
10.07.2012, 14:58 | |
Ответы с готовыми решениями:
51
динамичекий двумерный мас type *mass Что быстрее использовать, массив э-в, или указатель на массив э-в? Что быстрее массив или файл Run-Time Check Failure #2 - Stack around the variable 'mass' was corrupted |
320 / 270 / 128
Регистрация: 24.05.2012
Сообщений: 629
|
|
10.07.2012, 15:03 | 2 |
Одинаково. Нет.
0
|
70 / 64 / 5
Регистрация: 09.06.2012
Сообщений: 291
|
||||||
10.07.2012, 16:20 | 4 | |||||
вроде ж если
0
|
320 / 270 / 128
Регистрация: 24.05.2012
Сообщений: 629
|
|
10.07.2012, 17:30 | 5 |
xADMIRALx, в таком случае зачем Вам i?
1
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
10.07.2012, 18:11 | 7 |
варианты одинаковы в том смысле, что будет сгенерирован один и тот же код на языке более низкого уровня (то асмовский или машинный)
1
|
404 / 360 / 36
Регистрация: 11.10.2010
Сообщений: 1,907
|
|
10.07.2012, 18:14 | 8 |
знаю что оффтоп не всетаки
правда ли что mass[n] это синтаксический сахар?
0
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
10.07.2012, 20:20 | 10 |
С точки зрения результата эти записи одинаковы. Но, с точки зрения реализации они вполне могут отличаться(тут всё зависит компилятора и его настроек), при этом вторая запись не то что не будет работать быстрее, а скорее даже будет работать медленнее, чем первая(учитывая создание временной переменной). А вообще, никто вам не мешает запустить отладчик и проверить это самостоятельно
Нет
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
10.07.2012, 20:47 | 14 |
Avazart, Если тип пользовательский, то массив то все равно обыкновенный, следовательно не нужно смотреть на реализацию [] (более того ее скорее всего просто не будет в пользовательском классе).
0
|
Заблокирован
|
||||||||||||||||
10.07.2012, 20:47 | 15 | |||||||||||||||
Поддерживаю alex_x_x.
Предлагаю рассмотреть код ниже
asm fun1
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
10.07.2012, 20:51 | 17 |
Avazart, Объясни мне в чем разница. Массив он и в африке массив. А вот если использовать пользовательский тип контейнера - это уже другой разговор.
0
|
Заблокирован
|
|
10.07.2012, 20:57 | 18 |
Avazart, я всё показал с асмом и прочим, для контейнеров(ты их подразумеваешь?) надо смотреть (я их вообще стараюсь кроме string не использовать - не вижу никаких преимуществ: в любом контейнере скорость доступа к элементу ниже чем скорость доступа к идентичному элементу в массиве того же размера. Так накой чёрт юзать чьи-то там писанные алгоритмы, если я и сам себе контейнер при желании с на много шире функционалом напишу). Пусть ТС уточнит что он рассматривает - контейнеры с итераторами или банальные массивы.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
10.07.2012, 20:58 | 19 |
-=ЮрА=-,
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
10.07.2012, 20:59 | 20 |
ну при желании кто-нибудь для класса может перегрузить
operator[](int) operator+(int) operator*() но тут уже нет вопроса быстродействия - здесь будут совершенно разные методы/функции вызываться
0
|
10.07.2012, 20:59 | |
10.07.2012, 20:59 | |
Помогаю со студенческими работами здесь
20
Программа выдает ошибку при выводе структуры в функции Vyvod(int N, struct vehicle*mass) Undefined reference to Mass::~Mass Записать данные из dataGridView1 в массив mass Создайте одномерный массив C(mass3), который содержит элементы,присутствующие в обоих массивах A(mass) и B(mass2) USB Mass Storage или новые траблы с USB Mass storage class Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |