Click here to Skip to main content
15,884,388 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
AnswerRe: C++ Pin
Richard MacCutchan8-Jul-21 21:10
mveRichard MacCutchan8-Jul-21 21:10 
GeneralRe: C++ Pin
charlieg17-Aug-21 11:38
charlieg17-Aug-21 11:38 
QuestionHelp me to convert all to C++ (stdio.h) Pin
WEI SHEN KOK7-Jul-21 3:47
WEI SHEN KOK7-Jul-21 3:47 
AnswerRe: Help me to convert all to C++ (stdio.h) Pin
Victor Nijegorodov7-Jul-21 4:30
Victor Nijegorodov7-Jul-21 4:30 
AnswerRe: Help me to convert all to C++ (stdio.h) Pin
Dave Kreskowiak7-Jul-21 5:46
mveDave Kreskowiak7-Jul-21 5:46 
AnswerRe: Help me to convert all to C++ (stdio.h) Pin
Maximilien7-Jul-21 9:41
Maximilien7-Jul-21 9:41 
AnswerRe: Help me to convert all to C++ (stdio.h) Pin
Stefan_Lang7-Jul-21 21:16
Stefan_Lang7-Jul-21 21:16 
QuestionBase types and pointer arrays Pin
Richard Andrew x645-Jul-21 18:26
professionalRichard Andrew x645-Jul-21 18:26 
I'm trying to create an array of pointers to a common base class, but each pointer in the array will point to a different derived class instance. This is a 64-bit application.

Here's the critical portion of my code: (Unnecessary detail has been removed.)

Intellisense is warning me that the second pointer assignment (to the second element in the array) will cause a buffer overrun.

It says, "C6386: Buffer overrun while writing to 'this->m_Members': the writable size is 'this->m_MemberCount*8' bytes, but '16' bytes might be written."

I have never come across this warning before, and I wanted to ask the community if there is something obviously wrong with the code that I'm not seeing.

C++
m_MemberCount = 7;

CGsUCharType* m_s_b1 = new CGsUCharType();  // All of these "Type" classes are derived from CGsTypeBase
CGsUCharType* m_s_b2 = new CGsUCharType();
CGsUCharType* m_s_b3 = new CGsUCharType();
CGsUCharType* m_s_b4 = new CGsUCharType();

CGsUShortType* m_s_w1 = new CGsUShortType();
CGsUShortType* m_s_w2 = new CGsUShortType();
CGsULongType* m_S_addr = new CGsULongType();

CGsTypeBase** m_Members = new CGsTypeBase*[m_MemberCount]; // Is this the correct way to create an array of pointers?

m_Members[0] = m_s_b1;
m_Members[1] = m_s_b2; // This line has the warning about the buffer overrun.
m_Members[2] = m_s_b3;
m_Members[3] = m_s_b4;
m_Members[4] = m_s_w1;
m_Members[5] = m_s_w2;
m_Members[6] = m_S_addr;




The difficult we do right away...
...the impossible takes slightly longer.

AnswerRe: Base types and pointer arrays Pin
Daniel Pfeffer5-Jul-21 20:56
professionalDaniel Pfeffer5-Jul-21 20:56 
GeneralRe: Base types and pointer arrays Pin
Richard Andrew x646-Jul-21 3:55
professionalRichard Andrew x646-Jul-21 3:55 
AnswerRe: Base types and pointer arrays Pin
Richard MacCutchan5-Jul-21 20:59
mveRichard MacCutchan5-Jul-21 20:59 
GeneralRe: Base types and pointer arrays Pin
Richard Andrew x646-Jul-21 3:56
professionalRichard Andrew x646-Jul-21 3:56 
AnswerRe: Base types and pointer arrays Pin
CPallini5-Jul-21 21:03
mveCPallini5-Jul-21 21:03 
GeneralRe: Base types and pointer arrays Pin
Richard Andrew x646-Jul-21 3:57
professionalRichard Andrew x646-Jul-21 3:57 
AnswerRe: Base types and pointer arrays Pin
jschell17-Jul-21 10:09
jschell17-Jul-21 10:09 
GeneralRe: Base types and pointer arrays Pin
Richard Andrew x6417-Jul-21 13:39
professionalRichard Andrew x6417-Jul-21 13:39 
QuestionLiteral for a short Pin
Richard Andrew x645-Jul-21 11:47
professionalRichard Andrew x645-Jul-21 11:47 
AnswerRe: Literal for a short Pin
Greg Utas5-Jul-21 12:24
professionalGreg Utas5-Jul-21 12:24 
GeneralRe: Literal for a short Pin
Richard Andrew x645-Jul-21 12:55
professionalRichard Andrew x645-Jul-21 12:55 
QuestionDebug Application from Service Pin
Richard Andrew x643-Jul-21 14:16
professionalRichard Andrew x643-Jul-21 14:16 
AnswerRe: Debug Application from Service Pin
Daniel Pfeffer3-Jul-21 17:24
professionalDaniel Pfeffer3-Jul-21 17:24 
AnswerRe: Debug Application from Service Pin
Richard MacCutchan3-Jul-21 21:11
mveRichard MacCutchan3-Jul-21 21:11 
AnswerRe: Debug Application from Service Pin
Joe Woodbury4-Jul-21 17:14
professionalJoe Woodbury4-Jul-21 17:14 
GeneralRe: Debug Application from Service Pin
Richard Andrew x645-Jul-21 6:25
professionalRichard Andrew x645-Jul-21 6:25 
QuestionMultiple view ports in single window using opengl and c++ Pin
Member 107421151-Jul-21 23:15
Member 107421151-Jul-21 23:15 

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.