b***y 发帖数: 2799 | 1 1. 存指针的container和存object的container, 哪个更efficient.
2. static变量存放在什么region? 不是heap.
哎,小recruiter照本宣科问两问题,就被搞的丑态百出,落花流水. |
w***g 发帖数: 5958 | 2
要看情况。如果object很小,复制方便就用object container。如果object很大,或者
不允许复制(比如对应硬件或GUI对象的object)则用指针container。
程序在运行时内存被分成几个区域,分别是程序区(text), 已初始化数据区(data)和未
初始化数据区(bss),heap和stack。text和data是从程序中直接读入的,bss在程序初
始化时分配(因为未初始化,程序中只需要保存大小,不需要保存内容),而heap和
stack则是运行时动态分配的,大小可以变化。static变量如果初始化了那么存在data
区,如果未初始化则存在bss区,反正不是存在heap或stack。
【在 b***y 的大作中提到】 : 1. 存指针的container和存object的container, 哪个更efficient. : 2. static变量存放在什么region? 不是heap. : 哎,小recruiter照本宣科问两问题,就被搞的丑态百出,落花流水.
|
b***y 发帖数: 2799 | 3 多谢回答。第一个问题我一提到assignment operation,她马上就不问了,难道是答对
了?但她问的是efficiency啊,是不是应该说指针的new操作花很多时间?
第二个问题,貌似你是对的,但这应该取绝于编译器吧,有些OS不支持memory
segmentation.
data
【在 w***g 的大作中提到】 : : 要看情况。如果object很小,复制方便就用object container。如果object很大,或者 : 不允许复制(比如对应硬件或GUI对象的object)则用指针container。 : 程序在运行时内存被分成几个区域,分别是程序区(text), 已初始化数据区(data)和未 : 初始化数据区(bss),heap和stack。text和data是从程序中直接读入的,bss在程序初 : 始化时分配(因为未初始化,程序中只需要保存大小,不需要保存内容),而heap和 : stack则是运行时动态分配的,大小可以变化。static变量如果初始化了那么存在data : 区,如果未初始化则存在bss区,反正不是存在heap或stack。
|
i******r 发帖数: 323 | 4 指针不一定需要new吧?
如果object已经在那里了,取一下地址就可以了
【在 b***y 的大作中提到】 : 多谢回答。第一个问题我一提到assignment operation,她马上就不问了,难道是答对 : 了?但她问的是efficiency啊,是不是应该说指针的new操作花很多时间? : 第二个问题,貌似你是对的,但这应该取绝于编译器吧,有些OS不支持memory : segmentation. : : data
|
s*****g 发帖数: 323 | 5 再练练吧
【在 b***y 的大作中提到】 : 1. 存指针的container和存object的container, 哪个更efficient. : 2. static变量存放在什么region? 不是heap. : 哎,小recruiter照本宣科问两问题,就被搞的丑态百出,落花流水.
|
b***y 发帖数: 2799 | 6 您这练过的先给个标准答案。
【在 s*****g 的大作中提到】 : 再练练吧
|
n****g 发帖数: 150 | 7 这些问题没啥实际意义,正真的牛人是不需要知道的;据说做出Quake游戏的那个大牛
每天编程17小时以上,当初上大学的时候也被计算机课给郁闷的不得了,最后只好退学
了。 |