Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Как студию подружить со статической библиотекой скопилированой в MinGW ? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана матрица вещественных чисел. Преобразовать матрицу таким образом, чтобы элементы ее строк шли по убыванию http://www.cyberforum.ru/cpp-beginners/thread787774.html
Дана матрица вещественных чисел. Преобразовать матрицу таким образом, чтобы элементы ее строк шли по убыванию
C++ Вывод трёхмерной графики без окна Осваивая OpenGL столкнулся с потребностью вывода изображения напрямую на экран, без использования видимого окна. Долго искал в интернете информацию, но ничего особенно вразумительного не нашёл. Те... http://www.cyberforum.ru/cpp-beginners/thread787773.html
Потеря точности при масштабировании C++
Доброго времени суток может кто-то подскажет алгоритм масштабирования без потери точности,пока я для этого пользуюсь типом double и соответственно при увличении,уменьшении, а затем возвращении...
C++ Проверка на корректность логического выражения
Добрый вечер. На входе имеем логического выражение которое может содержать : 1. константы : 0 или 1 2. скобки : () 3. Операторы : or , and , not 4. Переменные : a-z Проверить на...
C++ Заполнение массива http://www.cyberforum.ru/cpp-beginners/thread787729.html
Даны числа от 0 до 15 (включительно), нужно записать их в одномерный массив в рандомном порядке, при этом числа не должны повторяться на вход ничего не дается, исходных данных нет пример того,...
C++ Обход лабиринта Добрый вечер. Стоит задача обойти лабиринт, заданный матрицей (вводятся размерности и начальное положение), т. е. посетить каждую клетку, до которой можно добраться и на определённом шаге узнать,... подробнее

Показать сообщение отдельно
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
16.02.2013, 21:50
Проблема в различных соглашениях о name mangling. Это весьма геморройная вещь, поэтому из библиотек, которые планируется скрещивать с кодом, собираемым кем-то другим, обычно не экспортируют всякие классы и т. п. Только функции. И только с extern "C" перед определением:
C++
1
2
3
4
5
extern "C"
void func(int a, int b)
{
    // ...
}
чтобы отключить этот самый name mangling. Который часто мешает объединять не только скомпилированное различными компиляторами, а и даже разными версиями одного и того же. И всё равно это не всегда помогает в случае классов.

Это как раз одна из серьёзных проблем C++ — отсутствие стандартного ABI.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru