我有几个问题不明白
1)string str = "Hello World";
有人说str是被存储在栈空间,栈空间就是缓存,是由系统自动分配的内存,这正确吗?另外,我想问问栈空间是在内存条上面的,还是CPU或者说在硬盘上呢?2)char *pch = new char[10];
有人说pch是分配在堆空间,这是由程序员自己定义的,这正确吗?另外,我想问问堆空间在硬件上的哪个位置呢?这和windows编程中的VirtualAlloc()函数有什么关系呢? VirtualAlloc()函数分配的物理存储器到底是内存条还是硬盘呢?3)一个DLL都可以远程插入到任意一个应用程序中吗?当我把一个DLL注入到一个应用程序的地址空间之后,用SetWindowLong()函数改变窗口函数地址,如果我只需要处理窗口的最小化消息,其他的所有消息都由原来的程序窗口函数来处理,我应该怎么做呢?问的有点繁琐,请大家指教。