Тема: f(const x)
Показать сообщение отдельно
Старый 27.06.2012, 02:35   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: f(const x)

Приблизительно понял смесь из memcpy и strcpy, но я же писал - в новой реализации как раз не нужно что либо делать (на запись) с аргументом.
Для адресования можно просто создать новый указатель (массив, напомню, и так константный).
char* sl_ptr=FileName+х;
В то время как в скопированной реализации, бралось имя файла без учёта полного адреса, потому там адекватно использовался "аргументный" указатель:
FileName+=х;
Отсутствие "защиты" (и копипаст!) приведёт к тому, что выбравшийся из леса конструкций указатель уже будет совсем не тем, что прежде. Он по-прежнему будет ласково отзываться на своё прежнее имя, но тьма уже простёрла руку: внутри него имена всемогущей кучи.


Наличие "защиты" какбэ говорит нам: имя файла определено в рамках функции раз и навсегда. Хотите создавать свои сущности - именуйте их иначе.

Ладно: пусть это будет текущее время, переданное в функцию решения группы диф.ур-ий.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием