2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 
Сообщение19.03.2008, 05:25 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
И не только в многопоточных: любая рекурсия — это риск.

 Профиль  
                  
 
 
Сообщение20.03.2008, 02:06 


08/01/08
21
А где здесь рекурсия?

 Профиль  
                  
 
 
Сообщение20.03.2008, 02:10 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
Если функция, возвращающая ссылку на статическую переменную, окажется явно или неявно рекурсивной, мало не будет.

Теперь модно говорить о потоках, но не след забывать, что проблема — это нереентерабельность такого кода, независимо от причины повторного вхождения.

Кроме того, существуют неприятности, связанные с использованием результата: например, нельзя одновременно использовать два результата такой функции
Код:
int& foo(int x);

int& u = foo(1);
int& v = foo(2);

print(u, v);
Пакость здесь в том, что не читая код foo(), понять источник проблем невозможно.

Кажется искусственным? Любому, кто имел дело со strtok() в С, не кажется: что может быть естественнее, чем разбить на строки по \n, а потом на поля по \t? Низяа: вложенный цикл убьёт strtok() во внешнем.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу Пред.  1, 2

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group