Вопросы по теме 'name-mangling'

Есть ли способ подавить искажение имени c ++?
У меня есть DLL, написанная на C ++, и я хочу подавить искажение имени для нескольких экспортируемых методов. Эти методы являются глобальными и не являются членами какого-либо класса. Есть ли способ добиться этого? Кстати: я использую VS2008.
9333 просмотров
schedule 26.09.2022

Изменение имени экспортированного функционального символа
У меня есть D DLL, которая загружается программой C++, которую я не могу контролировать. Программа LoadLibrary создает мою DLL и использует GetProcAddress для поиска функции с именем «extension_load», которая принимает один аргумент (указатель). В...
806 просмотров
schedule 11.10.2022

использование сторонней библиотеки (libconfig) с Qt (C++)
У меня возникли проблемы с тем, чтобы сторонняя библиотека (libconfig++) работала в Qt. При компиляции в Qt я получаю сообщения об ошибках, такие как: undefined reference to `_imp___ZN9libconfig6ConfigC1Ev' undefined reference to...
1625 просмотров
schedule 01.07.2023

Почему изменение имени не стандартизировано
Мне просто интересно, почему изменение имен никогда не стандартизировалось стандартом С++. Ясно, что наличие разных алгоритмов изменения имен ухудшает совместимость[1], и я не вижу никаких преимуществ в том, чтобы они определялись реализацией. То...
4729 просмотров
schedule 04.05.2022

С++ Name Mangler
Мне нужен менеджер командной строки для gcc. C++filt расправит c++filt _ZN10NamespaceA7not_funEi => NamespaceA::not_fun( int ) Но мне нужен манглер mangler NamespaceA::not_fun( int ) => _ZN10NamespaceA7not_funEi Как мне этого...
2569 просмотров
schedule 22.03.2023

Почему эти две функции неоднозначны, хотя их искаженные имена разные [дубликаты]
Рассмотрим следующие определения функций: void fun(int& a) { cout << "Ra" << endl; } А также: void fun(int a) { cout << "a" << endl; } Теперь, когда я вызываю функцию следующим образом: int a;...
38 просмотров

Ошибка компилятора из-за конфликтующих объявлений переменных: конфликтует с новым объявлением с привязкой 'C'
Я наткнулся на устаревший код, который не может быть построен на более новом компиляторе. Свернутый пример: int x; extern "C" { int x }; // conflicts with C++ linkage above // note: without the braces it would've been equivalent to: // extern "C"...
5646 просмотров
schedule 19.11.2022

Действительно ли Erlang или Elixir разрешаются по имени таким образом, что требуется изменение имени?
Решает ли понятие «арность» эту проблему? Я бегло просмотрел http://www.erlang.org/doc/man/global.html , но в основном это связано с регистрацией узлов, а не с разрешением по имени для функций или атомов. Использует ли CosNaming (...
118 просмотров
schedule 03.10.2022

Зачем предотвращать изменение имен файлов C
Примечание: мой вопрос касается моих знаний, я не пытаюсь решить конкретную проблему. я изучал использование библиотеки C в проекте CPP, чтобы предотвратить искажение имени компилятора: #ifdef __cplusplus extern "C" { #endif 1- но я также...
197 просмотров
schedule 10.06.2022