m*******o 发帖数: 264 | 1 5. Suppose you're responsible for writing class MyClass as part of a static
library.
a. How do you enforce that a single instance of this class be used at
compile-time.
b. How do you enforce that instances only be allocated on the stack, but
not on the heap, at compile-time. |
d*******d 发帖数: 2050 | 2 a, singleton
static
but
【在 m*******o 的大作中提到】 : 5. Suppose you're responsible for writing class MyClass as part of a static : library. : a. How do you enforce that a single instance of this class be used at : compile-time. : b. How do you enforce that instances only be allocated on the stack, but : not on the heap, at compile-time.
|
b********n 发帖数: 609 | 3 重点都是compile-time吧。
【在 d*******d 的大作中提到】 : a, singleton : : static : but
|
m*******o 发帖数: 264 | 4 thanks men, how about (B)? |
T*******i 发帖数: 4992 | 5 protected/private new/delete operator
【在 m*******o 的大作中提到】 : thanks men, how about (B)?
|
T*******i 发帖数: 4992 | 6 ?
【在 d*******d 的大作中提到】 : a, singleton : : static : but
|
m*******o 发帖数: 264 | 7 Could you be more specific?
Thanks!
【在 T*******i 的大作中提到】 : protected/private new/delete operator
|
d*******d 发帖数: 2050 | 8 global variabal, static variable may exist in heap.
你光overload new/delete,并且private它们,还是不能防止global variable/static
variable啊。
【在 T*******i 的大作中提到】 : ?
|
T*******i 发帖数: 4992 | 9 你快去翻书,呵呵
static
【在 d*******d 的大作中提到】 : global variabal, static variable may exist in heap. : 你光overload new/delete,并且private它们,还是不能防止global variable/static : variable啊。
|
d*******d 发帖数: 2050 | 10 oh,看来绝大部分情况下,global/static在另外一个单独的global area.
如果是这样的话,你要就可以了。
【在 T*******i 的大作中提到】 : 你快去翻书,呵呵 : : static
|
|
|
s**********b 发帖数: 7 | 11 还是有很多c的操作,malloc()还是在heap上,好麻烦,不过回答你这些也应该够了
【在 T*******i 的大作中提到】 : protected/private new/delete operator
|
r*********r 发帖数: 3195 | |
b*****e 发帖数: 474 | 13 这个compile-time的意思就是在compile阶段就可以保证吧. 这样说听起来别扭.
static
but
【在 m*******o 的大作中提到】 : 5. Suppose you're responsible for writing class MyClass as part of a static : library. : a. How do you enforce that a single instance of this class be used at : compile-time. : b. How do you enforce that instances only be allocated on the stack, but : not on the heap, at compile-time.
|
s**********b 发帖数: 7 | 14 仔细读一下,TIC,complie time就能保证的,是最好的code
【在 b*****e 的大作中提到】 : 这个compile-time的意思就是在compile阶段就可以保证吧. 这样说听起来别扭. : : static : but
|
l*****c 发帖数: 1153 | 15 I believe this is the better solution.
With private new/delete, you can only ensure it is not on heap.
use alloca() along with placement new, you can force it to be on stack.
【在 r*********r 的大作中提到】 : alloca() 行不行?
|