2014 dxdy logo

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

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




На страницу Пред.  1, 2
 
 
Сообщение19.03.2008, 05:25 
Аватара пользователя
:evil:
И не только в многопоточных: любая рекурсия — это риск.

 
 
 
 
Сообщение20.03.2008, 02:06 
А где здесь рекурсия?

 
 
 
 
Сообщение20.03.2008, 02:10 
Аватара пользователя
:evil:
Если функция, возвращающая ссылку на статическую переменную, окажется явно или неявно рекурсивной, мало не будет.

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

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

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

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

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

 
 
 [ Сообщений: 18 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group