It compiles in .NET; g++ gives me this
The following is a little bit of everything> g++ prog1.cpp
Undefined first referenced
symbol in file
PCB::~PCB [in-charge]() /var/tmp//ccDyM5iy.o
operator>>(std::basic_istream<char, std::char_traits<char> >&, PCB&)/var/tmp//cc
DyM5iy.o
operator<<(std::basic_ostream<char, std::char_traits<char> >&, PCB const&)/var/t
mp//ccDyM5iy.o
PCB::getStateStatus() const /var/tmp//ccDyM5iy.o
PCB::operator>(PCB const&) const /var/tmp//ccDyM5iy.o
PCB::PCB[in-charge](int, int, int, int, int, int, void const*)/var/tmp//ccDyM5iy
.o
ld: fatal: Symbol referencing errors. No output written to a.out
collect2: ld returned 1 exit status
titan/jsigar >
Note that I'm so illiterate in UNIX so will need clear answer. Thnx!Code:PCB::~PCB() { // this section is intentionally left blank } ... std::ostream &operator<<(std::ostream &stream, const PCB &pcb) { stream << pcb.pid << " "; stream << pcb.arrival_time << " "; stream << pcb.last_cpu_burst << " "; stream << pcb.test_cpu_burst << " "; stream << pcb.priority << " "; stream << pcb.state_status << " "; if (pcb.hook != NULL) { stream << reinterpret_cast<const char *>(pcb.hook); } return stream; } ... int PCB::getStateStatus() const { return state_status; } ... bool PCB::operator>(const PCB &anotherPCB) const { return (priority > anotherPCB.priority); }