Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Hur fria minnet?

Postades av 2003-12-18 14:32:52 - Pontus Wång, i forum c++, Tråden har 3 Kommentarer och lästs av 815 personer

Jag sitter med en klass i Borland C++ builder och har kört fast litegranna..

Jag får in ett flertal strängas av typen AnsiiString och måste omvandla dom till PChar, så här ser koden ut för att omvandla till PChar:

<code>
//---------------------------------------------------------------------------
PChar __fastcall MailMessage::AnsiStringToPChar(AnsiString s)
{
PChar r = NULL;
r = StrAlloc(s.Length());
StrPCopy(r, s);
return r;
}
//---------------------------------------------------------------------------
</code>

men nu har ett problem med detta upptäckts, då jag t.ex. gör så här:
<code>
Message.lpszSubject = AnsiStringToPChar(Subject);
</code>

så allokeras en minnesarea för min PChar, frågan är nu hur gör jag för att släppa den?

Minnet släpps väl inte om jag gör så här:
<code>
StrDispose(Message.lpszSubject);
</code>

Några tankar / förslag?


Svara

Sv: Hur fria minnet?

Postades av 2003-12-18 15:01:12 - Niklas Jansson

Det beror ju på hur PChar är uppbyggd.
Använder den kopior av strängen (och det verkar det som) borde det inte vara några problem att bara byta objekt, eller köra nån dispose.


Svara

Sv: Hur fria minnet?

Postades av 2003-12-18 15:43:54 - Pontus Wång

PChar är en pekare till en nollterminerad chararray.


Svara

Sv: Hur fria minnet?

Postades av 2003-12-18 16:10:00 - Niklas Jansson

Ingen klass alltså; en typedef?

Vad står det om StrAlloc och StrDispose?

Förmodligen räcker det med det du redan skrivit.
StrAlloc gör väl en "new" eller en "malloc", och StrDispose gör motsvarande "delete" eller "free"?

Och PChar är bara en pekare?
Då har du kopierat informationen en gång, och du släpper upp minnet... inga problem?


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 615
27 953
271 709
5 548
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies