lundi 4 septembre 2017

what's the details defference in the below ways of paramters passing in function call?

// solution 1:This way works well

PAME::Frame ff(frame.cols, frame.rows, frame.data, PAME::Frame::COLOR_FORMAT::BGR, (unsigned int)timestamp);
fd.Detect(ff);

// solution 2:This will result application crash, may be buffer overflow, I am not sure

fd.Detect(PAME::Frame(frame.cols, frame.rows, frame.data, PAME::Frame::COLOR_FORMAT::BGR, (unsigned int)timestamp));

When I use the solution 2, and try to adjust the stack frame size to 10000000 bytes of the project in vs2013, application crashes as it used to be? The application works well when stop compiler optimize by /Od when I chose solution 2. I puzzled by this problem, what is the detail difference? Thank you !

Aucun commentaire:

Enregistrer un commentaire