У меня есть старый код C, который я хотел бы объединить с некоторым кодом на C++.iostream linker error
код C используется, чтобы имеет следующие включает в себя:
#include <windows.h>
#include <stdio.h>
#include <string.h>
#include "mysql.h"
Теперь я пытаюсь сделать это с помощью C++ с iostream так:
#include <windows.h>
#include <stdio.h>
#include <string>
#include <iostream>
#include "mysql.h"
Но я получаю следующее ошибки компоновщика:
[Linker error] undefined ссылка на `std :: string :: size() const '
[Ошибка Linker] неопределенная ссылка на `станд :: струнной :: оператор [] (беззнаковое целое) сопзЬ»
[Linker Error] неопределенная ссылка на `станд :: струнной :: оператор [] (без знака ИНТ) Const '
[Linker ошибка] неопределенная ссылка на `станд :: струнной :: оператор [] (беззнаковое целое) сопзЬ'
[Linker Error] неопределенная ссылка на` станд :: ios_base :: Init :: Init() '
[Ошибка компоновщика] undefined ссылка на `std :: ios_base :: Init :: ~ Init()'
л.д. возвращается статус 1 выхода
Как решить эту проблему?
Edit: Мой компилятор Dev-C++ 4.9.9.2
Не будет `-lc` связываться с` libc`, который является библиотекой времени выполнения C, а не C++? Для C++ нужно связать с C++ Standard Library, `libstdC++`, используя параметр `-lstdC++` для `gcc` (или просто используя` g ++ `, который делает это автоматически). Не пытайтесь помочь, если вы не знаете, как, потому что вы можете одинаково хорошо совершать озорство. – SasQ 2012-08-04 04:36:06