what is the difference of binding under gcc and M$ VC 6?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
I have a project developed on openh323, because it is a more general C++ questions, I would like some C++ experts give me some
hints.

We customize some functions to comply our need, the details as follow:

on open323 lib, we have a h323rtp.h header file declare

virtual BOOL OnReceivedPDU(
H323_RTPChannel & channel, /// Channel using this session.

const H245_H2250LogicalChannelParameters & param, /// Acknowledgement PDU

unsigned & errorCode /// Error on failure

);

and in source h323rtp.c defines

BOOL H323_RTP_UDP::OnReceivedPDU(H323_RTPChannel & channel,

const H245_H2250LogicalChannelParameters & param,

unsigned & errorCode)

{

//some code here

}


To comply our need, we override the function in our own application code with exactly same signature

BOOL H323_RTP_UDP::OnReceivedPDU(H323_RTPChannel & channel,

const H245_H2250LogicalChannelParameters & param,

unsigned & errorCode)

{

//some customized code here

}


When I build it with gcc under Linux, the funtion in our applicatoin gets called, which is what we want. But when I compile/build it
with M$ Visual Studio C++ 6.0, it seems only the original function in h323rtp.c is called, out customized function is never called.

So what is the difference between these 2 environments? How can my customzied function also get called in Windows? How the declare
and definination is bind? Hope some people who has cross-platform experience can give me some hints.

Thanks
Kun

==============================================

 Kun Wei

 MC 256-48, Caltech
 Pasadena, CA 91125

 Phone: 626-395-8767
 Fax: 626-795-3951
 Url: http://www.its.caltech.edu/~weikun



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux