[ADO C++] Obsluga Event'ow.( Obiekt - Connection, Event - ExecuteComplete)
Ostatnio zmodyfikowano 2013-12-11 14:24
pekfos |
» 2013-12-10 19:57:41 Bo nie zwalniasz pamięci. |
|
Monika90 |
» 2013-12-10 21:36:24 A ściślej, to alokujesz dwa razy, a zwalniasz tylko raz. Pierwsza alokacja jest oczywiście zbędna... |
|
berkov Temat założony przez niniejszego użytkownika |
» 2013-12-11 07:25:03 hmmm... nie za bardzo rozumiem..
temp musze zaalokowac zeby wartosc zwracana z ConvertBSTRToString sie zmiescila... druga zmienna ktorej uzywam to wynik (_bstr_t) ktory a - nie moge uwolnic bo go zwracam, b - _bstr_t same o siebie "dbaja" i zwalniaja sie jak juz nie sa uzywane (no chyba ze cos zle zalapalem).... co innego w takim razie przegapilem? |
|
DejaVu |
» 2013-12-11 13:20:17 To nie jest obiekt, tylko wskaźnik. Nie kopiujesz tekstu lecz przypisujesz po prostu inny wskaźnik do zmiennej. |
|
berkov Temat założony przez niniejszego użytkownika |
» 2013-12-11 14:24:35 czyli innymi slowy moj kod po wywolaniu delete[] by zwolnil pamiec tylko stringu z ConvertBSTRToString(source) a nie pierwotnego do ktorego bezpowrotnie stracilem wskaznik w momencie przepisania go przez temp = _com_util::ConvertBSTRToString(source); innymi slowy nastepujacy kod powinien juz byc prawidlowy: int dl = source.length(); char * temp; temp = _com_util::ConvertBSTRToString( source );
delete[] temp;
btw... dalej nie wiem jak uzywac eventow hahhaa |
|
1 « 2 » |