Question about:use C++ in C
5 отговора
374 прегледа
Re: Question about:use C++ in C
portvash C-to kym plius-plqs (ako ne si pisal velichestveni prostotii trebe da e lesno shtoto C << C++)
ili
kompilirash C++ koda v dll s podhodqshti exporti - extern "C" da rechem. za celta ti sa ti nujni edni "stubcheta", naptimer:
#include "CShitObject.h"
void* getSomeShit(void* shitObject)
{
return ((CShitObject*)shitObject->getSomeShit())&;
}
ili
kompilirash C++ koda v dll s podhodqshti exporti - extern "C" da rechem. za celta ti sa ti nujni edni "stubcheta", naptimer:
#include "CShitObject.h"
void* getSomeShit(void* shitObject)
{
return ((CShitObject*)shitObject->getSomeShit())&;
}
Re: Question about:use C++ in C
Абе бирите тая вечел са ми в повечк, ама тоя & накрая каква точно козметика изпълнява? 
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Re: Question about:use C++ in C
nazdrave... hvana me! maznq pylna e stanala, no compilatora vednaga se skara! taka maj shaj po-dobre...
return &((CShitObject*)shitObject)->getSomeShit();
return &((CShitObject*)shitObject)->getSomeShit();
Re: Question about:use C++ in C
Ami tova sus extern "C" e istina, obache C++ ne se portva do C tolkova lesno,
purvo - promenlivite se deklarirat v nachaoto na funkciata na C, i ako imash iako C++ code deto promenlivite sa deklarirani tuk, tam - trebva da gi opravish.
Posle - clasovete - mojesh da napravish slednoto - pishesh structuri, kato naslediavaneto stava taka. inheritent structurata ima sushtite elementi kato parent, vuv sushtata posledovatelnost - kato dobaviash otdolu novite elementi (memberi) - taka mojesh da kastvash inheritent structurata kum parent.
Metodite na clasa se praviat globalni - ta da mogat da se polzvat, ili polzvash ukazateli kum funkcii kato memberi v structurite.
Chuval sum che starite C++ compilatori purvo translirat source code - to vuv C i posle go compilirat - tui moje da pomogne.
Ima i comercial toolove koito obrushtat ot C++ vuv C - obache sa skupi
Ami tova e obshto vzeto - dano da sum pomognal ...
purvo - promenlivite se deklarirat v nachaoto na funkciata na C, i ako imash iako C++ code deto promenlivite sa deklarirani tuk, tam - trebva da gi opravish.
Posle - clasovete - mojesh da napravish slednoto - pishesh structuri, kato naslediavaneto stava taka. inheritent structurata ima sushtite elementi kato parent, vuv sushtata posledovatelnost - kato dobaviash otdolu novite elementi (memberi) - taka mojesh da kastvash inheritent structurata kum parent.
Metodite na clasa se praviat globalni - ta da mogat da se polzvat, ili polzvash ukazateli kum funkcii kato memberi v structurite.
Chuval sum che starite C++ compilatori purvo translirat source code - to vuv C i posle go compilirat - tui moje da pomogne.
Ima i comercial toolove koito obrushtat ot C++ vuv C - obache sa skupi
Ami tova e obshto vzeto - dano da sum pomognal ...
Re: Question about:use C++ in C
Ami mnogo lesno. V C++ code-a dobaviash interface-na funkcia pred koiato pishes extern "C". Tia ima mangaling-a na C, i niamash nikakav problem da ia vikash. Ako vrasta pointer kam obekt, cstvash go kam void * i izpolzvash takanarechenite handles. V C++ programata definirash interface-ni metodi (pak extern "C") koito manipolirat pointer-a kato predvaritelno go casst-vat kam clasa koito iskash. Po-dobia variant e da go cast-nesh kam base clas ako ima takav, a posle da polzvash dynamic_cast za da si siguren che tipa e ochakvania. Vsichko tova nalaga dobaviane na C metodi v C++ programata.
----------
No trees were harmed in the composition of this message, although some electrons were mildly inconvenienced.
----------
No trees were harmed in the composition of this message, although some electrons were mildly inconvenienced.