Data Structures 面试题与答案
Question: What is placement new?Answer: When you want to call a constructor directly, you use the placement new. Sometimes you have some raw memory that?s already been allocated, and you need to construct an object in the memory you have. Operator new?s special version placement new allows you to do it.class Widget { public : Widget(int widgetsize); ? Widget* Construct_widget_int_buffer(void *buffer,int widgetsize) { return new(buffer) Widget(widgetsize); } }; This function returns a pointer to a Widget object that?s constructed within the buffer passed to the function. Such a function might be useful for applications using shared memory or memory-mapped I/O, because objects in such applications must be placed at specific addresses or in memory allocated by special routines. |
保存以便复习
收藏此条目、标记为困难题,或将其加入复习集合。
这有帮助吗? 是 否
用户评价最有帮助的内容:
- What is data structure?
- List out the areas in which data structures are applied extensively?
- What is the data structures used to perform recursion?
- If you are using C language to implement the heterogeneous linked list, what pointer type will you use?
- What are the methods available in storing sequential files ?