Click here to Skip to main content
15,887,464 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Combobox in DLL Pin
Richard MacCutchan4-Jan-10 1:01
mveRichard MacCutchan4-Jan-10 1:01 
AnswerRe: Combobox in DLL Pin
Tim Craig2-Jan-10 13:03
Tim Craig2-Jan-10 13:03 
QuestionRestricting rights to delete a dynamic array ? [modified] Pin
doug251-Jan-10 12:35
doug251-Jan-10 12:35 
AnswerRe: Restricting rights to delete a dynamic array ? Pin
«_Superman_»1-Jan-10 14:33
professional«_Superman_»1-Jan-10 14:33 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug251-Jan-10 16:28
doug251-Jan-10 16:28 
AnswerRe: Restricting rights to delete a dynamic array ? Pin
Moak3-Jan-10 11:05
Moak3-Jan-10 11:05 
GeneralRe: Restricting rights to delete a dynamic array ? [modified] Pin
doug254-Jan-10 9:10
doug254-Jan-10 9:10 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
Moak4-Jan-10 12:01
Moak4-Jan-10 12:01 
Hi! I tried to understand the problem you describe, this came in mind... probably it's the same as my first post but a little bit more detailed.

1) use data containers (STL or your own implementation) when ever possible, avoid manual memory allocations with new and delete.
2) alternatively rely on RAII (Resource Acquisition Is Initialization) that memory is automatically deallocated when an object goes out of scope (smart pointers from Boost or your own implementation). Such a smart pointer is responsible for encapsulating dynamically allocated memory and knows itself when to deallocate the memory again. You can even prevent application code from deleting a pointer that is being managed with a shared pointer, super fancy. Smile | :)

This is how I avoid situations where a developer wonders "do I own that pointer? do I need to delete it?". With the options shown above it is easier to keep control of ownership and lifetime in my opinion. I rarely call new and delete in application code. When designing APIs I often use a buffer/container object that a method can fill up or the class has methods/accessors to retrieve individual information. All of the above can be enforced with a C++ coding standard[^]. I suggest to have a look at Boost's shared pointer techniques[^] and maybe generally think about memory handling strategies from a overall design point of view.

Hope it helps.

/M


GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug254-Jan-10 12:27
doug254-Jan-10 12:27 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug255-Jan-10 2:40
doug255-Jan-10 2:40 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
Moak5-Jan-10 3:41
Moak5-Jan-10 3:41 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug255-Jan-10 15:10
doug255-Jan-10 15:10 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug255-Jan-10 16:44
doug255-Jan-10 16:44 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
Moak5-Jan-10 23:16
Moak5-Jan-10 23:16 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug256-Jan-10 3:43
doug256-Jan-10 3:43 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
Moak6-Jan-10 12:51
Moak6-Jan-10 12:51 
GeneralRe: Restricting rights to delete a dynamic array ? [modified] Pin
doug256-Jan-10 16:14
doug256-Jan-10 16:14 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
Moak7-Jan-10 1:03
Moak7-Jan-10 1:03 
GeneralRe: Restricting rights to delete a dynamic array ? Pin
doug257-Jan-10 11:38
doug257-Jan-10 11:38 
Questioncommunication between objects Pin
Alex80gbg1-Jan-10 8:44
Alex80gbg1-Jan-10 8:44 
AnswerRe: communication between objects Pin
Rozis2-Jan-10 8:17
Rozis2-Jan-10 8:17 
GeneralRe: communication between objects Pin
Alex80gbg2-Jan-10 11:52
Alex80gbg2-Jan-10 11:52 
QuestionLNK2019 for XmlLite Pin
A&Ms1-Jan-10 8:30
A&Ms1-Jan-10 8:30 
AnswerRe: LNK2019 for XmlLite Pin
A&Ms1-Jan-10 11:14
A&Ms1-Jan-10 11:14 
GeneralRe: LNK2019 for XmlLite Pin
conrad Braam3-Jan-10 4:04
conrad Braam3-Jan-10 4:04 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.