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

Может ли третий проверка возвращаемого функцией значения влиять на результат линковки? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Доступ к методам, массив указателей http://www.cyberforum.ru/cpp-beginners/thread806181.html
Можно ли как нибудь получить доступ к методу Positive в данном случае: StrL ** testStr3; testStr3= new StrL * ; testStr = new StrLBit("000110101"); bool tmp = testStr->Positive(); если StrL...
C++ Краткое и индексное хранение списков на входе задано последовательность целых положительных чисел, не более 99, заканчивающуюся нулем. Организовать последовательно-связанное индексное хранение последовательности так, чтобы числа, имеют... http://www.cyberforum.ru/cpp-beginners/thread806168.html
C++ выделение памяти
доброго времени суток)возник вопрос по поводу выделения памяти) если стоит тип int, то все работает норм, а если float то ошибку выдает)в чем косяк подскажите пожалуйста) #include<iostream> ...
C++ Алгоритм RC5
Приветствую! Очередная лаба по криптографии вызвала определенные сложности. По заданию нужно реализовать приложение, которое: "1)С помощью EKE на основе RSA проверяет подлинность двух пользователей...
C++ Копирование массива (строки) в методе класса http://www.cyberforum.ru/cpp-beginners/thread806148.html
У меня есть класс, поле которого массив символов char* В конструкторе копий требуется копировать это поле для нового объекта. Я это делаю так: char* Student::ArrayCopy(char* arr) { if (arr...
C++ Поиск слова в файле Звучит просто, а на деле... Такая простая операция и... Есть варианты? #include <iostream> #include <string> #include <stdio.h> using namespace std; int main () { setlocale (LC_ALL,... подробнее

Показать сообщение отдельно
kravam
быдлокодер
1696 / 883 / 45
Регистрация: 04.06.2008
Сообщений: 5,474

Может ли третий проверка возвращаемого функцией значения влиять на результат линковки? - C++

12.03.2013, 01:38. Просмотров 663. Ответов 19
Метки (Все метки)

Не торопитесь с ответом. Я тоже так думал.
Кропаем dll:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
//dllka.cpp
#include <unknwn.h>
void f(){
  
  //Размер взят от балды
  char x [23];
 
  //так ругается
  //if(memcmp(&x,&IID_IUnknown,2)); 
  
  //а так нет
  memcmp(&x,&IID_IUnknown,2); 
}
Bash
1
2
3
4
5
rem кропаем dll
g++ -c -DBUILD_DLL dllka.cpp
g++ -shared -o dllka.dll -Wl,--out-implib,libdllka.a dllka.o
del dllka.o libdllka.a
rem конец кропания dll
Нормально?
Теперь: код, понятно, искусственный. Реальный код много больше, я его просто упрощал до минимума чтобы лишь продемонстрировать ошибку в линковке. В чём же дело, друзья?

...А самое главное, ругается вот на эту фигню:
Bash
1
2
3
4
g++ -shared -o dllka.dll -Wl,--out-implib,libdllka.a dllka.o
Creating library file: libdllka.a
dllka.o:dllka.cpp:(.text+0x12): undefined reference to `IID_IUnknown'
collect2: ld returned 1 exit status
Ну это вообще вне моего понимания. Если он не может распознать IID_IUnknown, что же он её как-то выборочно не может распознать? То может то не может.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru