Я использую LD_PRELOAD для перегрузки system()
, fopen()
и т.д., и теперь я хочу заменить fstream своей собственной реализацией, но я не знаю, с чего начать. Я искал в Интернете, но не могу найти хороших примеров о перегрузке частей или всего класса. Любая помощь будет оценена.
Благодарю.
Поисковый термин, который вам понадобится, это «искажение имени». Каждый метод класса имеет внутреннее имя, которое совместимо с соглашениями платформы. Это имя генерируется компилятором.
Перенос имен является детерминированным, поэтому если вы реализуете одни и те же методы, они будут иметь одинаковые искаженные имена.
Других решений пока нет …