Re[9]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 09:35
Оценка: -1 :)
Здравствуйте, WiseAlex, Вы писали:

WA>добавь в конце строчку

WA>printf("%u %u", iv[0], i[0]);
WA>и удивись

Ну нифига!!! И зачем это добавлять и так, нормально. А вот нет у меня другого кода.
Re[10]: Инициализация массива при создании его через new
От: WiseAlex Беларусь  
Дата: 07.04.09 09:41
Оценка: 14 (1) :)
Здравствуйте, Аноним, Вы писали:

А>Ну нифига!!! И зачем это добавлять и так, нормально. А вот нет у меня другого кода.

оптимизатор вполне резонно посчитал что i нигде не использует и просто весь код выбросил
printf объяснил что i нам нужен — вот и вся магия ...
в итоге вектор в 4 раза быстрее на этом примере
Re[10]: Инициализация массива при создании его через new
От: catBasilio  
Дата: 07.04.09 09:44
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, catBasilio, Вы писали:


B>>Наверное потому что я только что пообедал что-то сходу не могу сообразить что тут считается.

B>>double d1 = .. — время выполнения fun1
B>>double d2 = .. — время выполнения fun2

B>>d1=d1/f.QuadPart; — отношение времени выполнения fun1() к текущему времени? зачем?

B>>d2=d2/f.QuadPart;

B>>выведи просто

А>>> double d1=(t1.QuadPart-t0.QuadPart);
А>>> double d2=(t2.QuadPart-t1.QuadPart);

А>Изучи код, там все просто. И за одно и посмотри ассемблер.


А> Чтобы получить время — надо получить секунды, а не коунтеры.


странно, мне всегда казалось, что надо делить на количество каунтеров в секунду, а не на общее количество каунтеров.
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса
Re[11]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 09:44
Оценка:
Здравствуйте, WiseAlex, Вы писали:

WA>Здравствуйте, Аноним, Вы писали:


А>>Ну нифига!!! И зачем это добавлять и так, нормально. А вот нет у меня другого кода.

WA>оптимизатор вполне резонно посчитал что i нигде не использует и просто весь код выбросил
WA>printf объяснил что i нам нужен — вот и вся магия ...
WA>в итоге вектор в 4 раза быстрее на этом примере

В итоге, на таком искуственном (!!!) изгонении назница НОЛЬ. Но в рельности такое будет очень редко. Так что вектора это шит. И не надо его совать туда где он нахрен не нужен. !!!
Re[12]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 09:47
Оценка: +1 :)
А>В итоге, на таком искуственном (!!!) изгонении назница НОЛЬ. Но в рельности такое будет очень редко. Так что вектора это шит. И не надо его совать туда где он нахрен не нужен. !!!

Вектор в 4 раза быстрее == "назница НОЛЬ" для тебя? "Но в рельности такое будет очень редко. Так что вектора это шит" — шит потому, что
быстрее? Да ты индус! Тебя Кумар зовут?
Re[6]: Инициализация массива при создании его через new
От: Lorenzo_LAMAS  
Дата: 07.04.09 09:49
Оценка: +1
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, sokel, Вы писали:


S>>хехе, но с другой стороны, вопрос о списке инициализации, так что массив предположительно небольшой, тогда зачем нужен new?


E>В чём суть проблемы топикстартера я тоже не понимаю...

http://en.wikipedia.org/wiki/Troll_(Internet)
Of course, the code must be complete enough to compile and link.
Re[4]: Инициализация массива при создании его через new
От: igna Россия  
Дата: 07.04.09 09:51
Оценка: -1 :)
Здравствуйте, Erop, Вы писали:

E>Но чтобы не использовать надо таки понимать почему не используешь...




Нет, правда ... Разве из твоего высказывания логически не следует, что если не понимаешь, то надо использовать?
Re[10]: Инициализация массива при создании его через new
От: catBasilio  
Дата: 07.04.09 09:54
Оценка:
Здравствуйте, Аноним, Вы писали:

А>ДА РАЗБЕРИТЕСЬ ЖЕ УЖЕ НАКОНЕЦ!!! люди — ВЫ НЕ ИНДУСЫ. !!!


разобрался!!!

вот ассемблерный код

  LARGE_INTEGER t0,t1,t2,f;

  QueryPerformanceCounter(&t0);
00401046  lea         eax,[esp+54h] 
0040104A  mov         dword ptr [esp+0C0h],ebx 
00401051  mov         esi,dword ptr [__imp__QueryPerformanceCounter@4 (402000h)] 
00401057  push        eax  
00401058  call        esi  
  fun1( &iv );
0040105A  mov         ebx,dword ptr [esp+78h] 
0040105E  mov         eax,2 
00401063  mov         ecx,1000h 
00401068  mov         edi,ebx 
0040106A  rep stos    dword ptr es:[edi] 
  QueryPerformanceCounter(&t1);
0040106C  lea         ecx,[esp+4Ch] 
00401070  push        ecx  
00401071  call        esi  
  fun2( i );
  QueryPerformanceCounter(&t2);
00401073  lea         edx,[esp+5Ch] 
00401077  push        edx  
00401078  call        esi


в случае с вектором он чесно заполняет массив двойками.
а функцию fun2 компилятор просто УДАЛИЛ за ненадобностью. Так что QueryPerformanceCounter(&t2); считает просто время выполнения функции QueryPerformanceCounter;
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса
Re[11]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:07
Оценка: :)
Здравствуйте, catBasilio, Вы писали:

B>разобрался!!!

...
B>в случае с вектором он чесно заполняет массив двойками.
B>а функцию fun2 компилятор просто УДАЛИЛ за ненадобностью. Так что QueryPerformanceCounter(&t2); считает просто время выполнения функции QueryPerformanceCounter;

Точно, и это ОТЛИЧНО!
Re[13]: Инициализация массива при создании его через new
От: catBasilio  
Дата: 07.04.09 10:10
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>>В итоге, на таком искуственном (!!!) изгонении назница НОЛЬ. Но в рельности такое будет очень редко. Так что вектора это шит. И не надо его совать туда где он нахрен не нужен. !!!


А>Вектор в 4 раза быстрее == "назница НОЛЬ" для тебя? "Но в рельности такое будет очень редко. Так что вектора это шит" — шит потому, что

А>быстрее? Да ты индус! Тебя Кумар зовут?

Я на 2008 студии компилял при отключенной проверке выхода за границы разница 10%.
Но вообще рунтаймовая проверка выхода это очень полезно. Нельзя ее недооценивать. При том что для обычного массива выделенного по new можно запросто забыть позвать delete.
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса
Re[13]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:15
Оценка: :)
Здравствуйте, Аноним, Вы писали:

А>>В итоге, на таком искуственном (!!!) изгонении назница НОЛЬ. Но в рельности такое будет очень редко. Так что вектора это шит. И не надо его совать туда где он нахрен не нужен. !!!


А>Вектор в 4 раза быстрее == "назница НОЛЬ" для тебя? "Но в рельности такое будет очень редко. Так что вектора это шит" — шит потому, что

А>быстрее? Да ты индус! Тебя Кумар зовут?

Ты что не понимаешь? Ноль это значит 0... Нет разнцы, нет в четыре раза. Понял? Разницы нет. И это ТОЛЬКО в этом примере. А так вектор в 36 раз медленее. Вектор это шит. Пора дебангалорить тех кто юзает вектора...
Re[7]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:20
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

S>>>хехе, но с другой стороны, вопрос о списке инициализации, так что массив предположительно небольшой, тогда зачем нужен new?


E>>В чём суть проблемы топикстартера я тоже не понимаю...

L_L>http://en.wikipedia.org/wiki/Troll_(Internet)

Код на столе, а вы где? ... Троль... хм, просто позорище.
Re[14]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:23
Оценка:
А>Ты что не понимаешь? Ноль это значит 0... Нет разнцы, нет в четыре раза. Понял? Разницы нет. И это ТОЛЬКО в этом примере. А так вектор в 36 раз медленее. Вектор это шит. Пора дебангалорить тех кто юзает вектора...
Кумар, успокойся. Мерять производительность твоих кретинских программ и кричать про шит начал ты сам. Держи себя в руках.
Re[8]: Инициализация массива при создании его через new
От: Lorenzo_LAMAS  
Дата: 07.04.09 10:24
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Lorenzo_LAMAS, Вы писали:


S>>>>хехе, но с другой стороны, вопрос о списке инициализации, так что массив предположительно небольшой, тогда зачем нужен new?


E>>>В чём суть проблемы топикстартера я тоже не понимаю...

L_L>>http://en.wikipedia.org/wiki/Troll_(Internet)

А>Код на столе, а вы где? ... Троль... хм, просто позорище.

Мне тут помогли найти вашу фотку! Держите! http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:Internet_Troll_velu_ill_artlibre_jnl.jpg
Of course, the code must be complete enough to compile and link.
Re[15]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:30
Оценка:
Здравствуйте, Аноним, Вы писали:

А>>Ты что не понимаешь? Ноль это значит 0... Нет разнцы, нет в четыре раза. Понял? Разницы нет. И это ТОЛЬКО в этом примере. А так вектор в 36 раз медленее. Вектор это шит. Пора дебангалорить тех кто юзает вектора...

А>Кумар, успокойся. Мерять производительность твоих кретинских программ и кричать про шит начал ты сам. Держи себя в руках.

Я сам?! О... здесь
Автор: catBasilio
Дата: 07.04.09
а извиниться? Ну? Дущонкой слабоват? Ты же оказался не прав — почему же не признать?

Не тут явно — ЛНС.

Убого как-то всё у некоторых — слабаки дущой — нож в спину, кляузу, в троем одного... Это все-таки убого, а настоящие мужики — неправ — признаю, был не прав. Извини.

Батаники.
Re[16]: Инициализация массива при создании его через new
От: Lorenzo_LAMAS  
Дата: 07.04.09 10:32
Оценка:
А>Не тут явно — ЛНС.

А>Убого как-то всё у некоторых — слабаки дущой — нож в спину, кляузу, в троем одного... Это все-таки убого, а настоящие мужики — неправ — признаю, был не прав. Извини.


А>Батаники.


Мне кажется, вам пора остановиться.
Of course, the code must be complete enough to compile and link.
Re[9]: Инициализация массива при создании его через new
От: Аноним  
Дата: 07.04.09 10:37
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

А>>Код на столе, а вы где? ... Троль... хм, просто позорище.

L_L>Мне тут помогли найти вашу фотку! Держите! http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:Internet_Troll_velu_ill_artlibre_jnl.jpg

Ага — на этом, и остановимся.... ха-ха, убогие...


Мне кажется, вам пора остановиться.


Я не начинал ... Тролем, начали крутить ВЫ. И оказались не правы — и духу признать это не хватает, а хватает, только флеймить. Причем я считаю, что я то как раз веселиться имею право — я оказался прав.

На мой взгляд, способность признать собственные ошибки — говорит о силе человека, а не способность — говорит о слобости. Я вот всегда, без проблем признаю — если был не прав. В чем проблема.
Re[10]: Инициализация массива при создании его через new
От: Lorenzo_LAMAS  
Дата: 07.04.09 10:42
Оценка: +1
А>Я не начинал ... Тролем, начали крутить ВЫ. И оказались не правы — и духу признать это не хватает, а хватает, только флеймить. Причем я считаю, что я то как раз веселиться имею право — я оказался прав.

В том, что вы тролль — я не сомневаюсь и от слов своих не откажусь.
Давайте вы по пунктам приведете мои сообщения (кроме слов о троллях) и обоснуете, в чем я не прав. Подозреваю, что вы это не сделаете.

А>На мой взгляд, способность признать собственные ошибки — говорит о силе человека, а не способность — говорит о слобости. Я вот всегда, без проблем признаю — если был не прав. В чем проблема.


Не вам рассуждать об этом. В этом топике вы наделали кучу ошибок и ни одной не признали. С этого момента, я отвечаю на ваши последующие сообщения _только_ если вы аргументированно отвечаете на мои и не игнорируете вопросы.
Of course, the code must be complete enough to compile and link.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.