This must be platform dependant because on my linux box
with g++ 3.2. I get to link and execute.
John M. Dlugosz. Are you sure of what you say?
Sorry about the off topic.
==toto.h
class A {
int ma;
void printit();
A::A() : ma(666) {}
};
==toto1.cc
#include "iostream"
#define class struct
#include "toto.h"
main() {
A a;
std::cerr << a.ma << "\n";
a.printit();
}
==toto2.cc
#include "iostream"
#include "toto.h"
void
A::printit() {
std::cerr << ma << "\n";
}
===Compilation, link, execution
$ g++ -c toto1.cc -o toto1.o
$ g++ -c toto2.cc -o toto2.o
In file included from toto2.cc:2:
toto.h:1: warning: all member functions in class `A' are private
$ g++ toto*.o -o a.out
$ ./a.out
666
666
$