Я сопротивлялся искушению добавить это к ответу Роберта Гэмбла - считай это дополнением к нему.
Остерегайтесь простого предположения, что «любое совпадение» подходит для использования. В другом вопросе SO был случай, когда часть кода была перемещена из Windows в Unix, и код Windows использовал getch()
для чтения одного символа из ввода. Пользователь прошел процесс, аналогичный этому, и обнаружил getch()
в Unix в библиотеке curses
. Итак, пользователь связался с библиотекой curses
и задумался, почему выгружено ядро кода. Проблема в том, что фактически используемый getch()
предполагает, что правильная инициализация была выполнена, а правильная инициализация не была выполнена. На самом деле, вероятно, это была не та рутина, которая была необходима.
В Solaris есть опции для nm
, которые сообщают вам имя библиотеки и даже объектный файл в библиотеке, содержащей символ (это -r
для имени библиотеки и -R
для объекта в библиотеке).
Остерегайтесь искаженных имен в C ++. Пример ortho2
явно не искажен в C ++.