|
|
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoсмотрим асмовый код, сколько там у нас инициализаций? Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
к пред. сообщению: данный if и следовательно прыжок уводит от a=1, получаем случайное значение a аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:32 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhЧестно, блин, почитай топик (это в первом листе, вроде) честно. читал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:33 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. замечу: переменная сидит в стеке, а в создании под нее отводится место. двойного отведения места нету. a=1 выполнитться столько-то раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:35 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
паскриптум к пред. 4 сообщениям : gсс аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:36 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin maXmo AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. замечу: переменная сидит в стеке, а в создании под нее отводится место. двойного отведения места нету. a=1 выполнитться столько-то раз. В этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:45 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhВ этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
акуз ЦИК AkhВ этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. Выделение памяти в стеке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 09:43 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh акуз ЦИК Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. Выделение памяти в стеке? что-нибудь вроде того, но! на этапе подготовки кода. а по заврешенпю онной строка удалилась, и как вывод, метка указала в пустоту. другими словами, хоть в стеке место считается по коичеству int ов в коде, но указывать напрямую на инт низзя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 16:18 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklina=1 выполнитться столько-то раз.повезло, что тут инт, а если бы был класс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 11:28 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Aklina=1 выполнитться столько-то раз.повезло, что тут инт, а если бы был класс? гм. скорее выполниться несколько раз перегруженный оператор "=" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 13:15 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoMyObj myobj(param1); Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. результат: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 13:38 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
ЙОПТ.. два деструктора! Рву на себе волосы! Топчу фсю литературу по программированию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 14:17 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
как его бишь зовут? Роллап стека? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 14:38 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoкак его бишь зовут? Роллап стека? кого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2006, 17:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoкак его бишь зовут? Роллап стека? Каллапсис? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 10:16 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Так, вы что? Глюк нашли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 10:16 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklinкого?стека. Гоуту часто фачит стек, что мы и наблюли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 11:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Так все нормально ну немного не оптимизирован код а так ведm 2 раза должен создаваться ааа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 12:27 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Aklinкого?стека. Гоуту часто фачит стек, что мы и наблюли. гм. а можно то же но по русски??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 13:11 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
о, вспомнил, называется stack unwinding. Если оператор goto пересекает границы областей видимости, он должен вычищать стек от временных переменных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 14:46 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoо, вспомнил, называется stack unwinding. Если оператор goto пересекает границы областей видимости, он должен вычищать стек от временных переменных. видимо сам гоуту сидит в ифе, а при вылезании из него, очищает класс... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 15:54 |
|
||
|
|

start [/forum/topic.php?fid=57&startmsg=34164435&tid=2029904]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
198ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
76ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 561ms |

| 0 / 0 |
