VBO content doesn't match

Hello, I am creating my own render engine. I have stored my vertex data i.e. position, color, normal, texcoord in a struct called Vertex. The Vertex got stored as a pointer in the vector. After changing the code so the Vertices get stored on the stack instead of the heap, the 3D objects I was rendering didn’t get rendered anymore. Because I am using VS I looked after the memory allocation and I encountered (if I am not wrong) that the memory of the VBO (Memory 1) doesn’t match the read vboContent (Memory 2) which I have created for the debug purpose. You can see this in the attached screenshot where you can see in addition the code which handles this. Is there something you can see which I am doing wrong?. Thank you.

Is BufferType::VER_BO set to GL_ARRAY_BUFFER in your code? If not, you may not be mapping the correct buffer object.

Also, be sure to Check for OpenGL Errors.

Yes, this is set to GL_ARRAY_BUFFER.

typedef struct tBuffer
{
	static const int VER_BO = GL_ARRAY_BUFFER;	// Vertex buffer
	static const int IND_BO = GL_ELEMENT_ARRAY_BUFFER;	// Index buffer
	static const int TEX_BO = GL_ARRAY_BUFFER;	// Texture coords buffer
} BufferType;

The problem was not in that function as I believed before, but that the VAO class was also changed to get allocated onto the stack. This causes the memory to be not accessible from outside. The funny thing is that in the inspector of VS all data got displayed right. After changing all back to pointers the problem disappeared. I figured the problem out after rollback my Git repo to a previous working one and did step by step changes. Nevertheless, thank you for your help