Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


accessing c++ objects within c. linking error.

peterpan66peterpan66 Member Posts: 1
Hello everybody,
My goal is accessing c++ objects within c by using wrapper and externals. To get the pointer to the c++ object I use a type "void *".
But i get an error while linking: undefined reference to "create_mycpp".

Does anybody has an idea what the problem is? Or should I take an other way to access c++ objects?

#include "mycpp.h"
Mycpp::void func(int i)
i += 1;

#ifndef MYCPP_H
#define MYCPP_H
class Mycpp {
void func(int);

typedef void * tMYCPP;
tMYCPP create_mycpp();
void mycpp_func(tMYCPP, int);

#include "mywrapper.h"
#include "mycpp.h"
#ifdef __cplusplus
extern "C" {
void * create_mycpp() {
return (tMYCPP)new Mycpp();
void mycpp_func(void * _mycpp, int _value) {
((Mycpp*) _mycpp)->func(_value);

#include "mywrapper.h"
tMYCPP aCpp = create_mycpp();
mycpp_func(aCpp, 2);

Sign In or Register to comment.