Что такое утилита Linux для искажения имени символа C ++?

я имеюc++filt команда, чтобы разобрать символ, что инструмент, чтобы сделать противоположное и искажать имя символа?

Это было бы полезно, если бы я хотел позвонитьdlsym() на искаженном имени функции C ++. Я скорее не буду жестко кодировать искажение имени в коде, так как оно может измениться со временем из-за использования новых версий компиляторов или новых брендов компиляторов или в настоящее время из-за компиляции для нескольких платформ.

Есть ли программный способ получить строку, которая представляет функцию C ++ во время выполнения, чтобы код не зависел от компилятора? Один из возможных способов сделать это - вызвать во время компиляции утилиту, которая выполняет искажение имени для используемого компилятора и вставляет соответствующее искаженное имя символа C ++ в строку дляdlsym() использовать.

Вот наиболее близкое к решению, которое я нашел на этом сайте. что достигается путем использования фиксированного имени в стиле C для обращения к символам C ++, которые определены в библиотеке, которую вы хотитеdlsym(), но если у вас нет контроля над тем, что предоставляет эта библиотека, это не вариант.

Ответы на вопрос(4)

Ваш ответ на вопрос