一些很基础的C++和计算机知识问题,各位有没有兴趣指教一下

vcbear 2002-03-27 12:04:56
有能力回答出这些问题,对你的职业生涯也许会有好处,真的。

1.C++面向对象的核心是指什么?
2.静态数据(全局/非全局)在内存里那个部分分配?该部分的容量是否有限制,如有,多大?
3.全局数据又在内存的哪里分配?该部分的容量是否有限制,如有,多大?
4.一个可执行模块装载后会一般有多少个数据段,还有哪些重要的组成部分
5.堆和栈什么时候初始化,初始化的时候可能会装入哪些东西?
6.不用类能不能实现面向对象?
7.不用虚函数能否实现多态?
8.分别谈谈你对inline,friend机制的看法
9.谈谈你对“抽象”的看法,如何在你的工作中使用“抽象”
10.100000个完全随机的整数,你如何设计一个算法,最快找出其中的哪些数重复,重复几次
11.系统内有4个资源,3个进程,每个进程至少需要访问2个或以上的资源。请问这种情况下是否一定发生死锁?是否不会死锁?或者不确定!

...全文
214 105 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
105 条回复
切换为时间正序
请发表友善的回复…
发表回复
myhpux 2002-04-05
  • 打赏
  • 举报
回复
这些都是C++的精华啊!
fossil2000 2002-04-04
  • 打赏
  • 举报
回复
To: vcbear (一只平凡无知@贫穷无钱¥的熊)
初来乍到,很多东西要学习,不对的请指正。
fossil2000 2002-04-04
  • 打赏
  • 举报
回复
我来试试这11个问题:(不对的请指教)
1.C++面向对象的核心是指什么?
答:封装
理由:愚以为面向对象的思想方法的思想根源就是“模拟”现实世界的思想方式,处世方法,在现实世界中,人们只可能生活在某一细节中的生活圈子,而对其它的东西只能是通过表现给我们的行为(接口函数)来为我们所用,比如,我们开车,我们只可能学会开车,而不会去自己造汽车。
2.静态数据(全局/非全局)在内存里那个部分分配?该部分的容量是否有限制,如有,多大?
答:在程序的数据段处,容量出OS决定
理由:程序在编译时,遇到静态数据说明时会直接分配一段内存给它存放数据,并且不可再改变(变量可以)。大可嘛当然是由OS说了算
3.全局数据又在内存的哪里分配?该部分的容量是否有限制,如有,多大?
答:同上
4.一个可执行模块装载后会一般有多少个数据段,还有哪些重要的组成部分
答:数据段一般是两个,R/W的和RO的
理由:。。。。。。
5.堆和栈什么时候初始化,初始化的时候可能会装入哪些东西?
答:程序须要进始化
理由:严格说来,OS启动后空闲的内存都可以用来做堆和栈,当程序向OS提出出申请时,OS根据当前的内存使用情况作出相应反应(分配,不分配,分配一部分以及虚拟内存),初始化成功后会返回给程序一个指针。
6.不用类能不能实现面向对象?
答:当然可以
理由:如1所说,类只是一种思想方法,可以用其它的适当的语言来实现。
7.不用虚函数能否实现多态?
答:同6
8.分别谈谈你对inline,friend机制的看法
答:对不起,用的不多,体会不深。
9.谈谈你对“抽象”的看法,如何在你的工作中使用“抽象”
答:此题与1,6是一个题,抽象是人类认识世界的一个重要的方法,不论你现在是否是在从事计算机工作,你都使用过抽象的思想去想问题。
10.100000个完全随机的整数,你如何设计一个算法,最快找出其中的哪些数重复,重复几次
答:这是一个HASH问题,选用适当的HASH函数可解决,大约为O(n)
11.系统内有4个资源,3个进程,每个进程至少需要访问2个或以上的资源。请问这种情况下是否一定发生死锁?是否不会死锁?或者不确定!
答:不一定;
理由:依程序的执行情况而定。具体可参考PV操作。
TechnoFantasy 2002-04-04
  • 打赏
  • 举报
回复
:-)
GaoYang 2002-04-04
  • 打赏
  • 举报
回复
gz
Last_Dodo 2002-04-03
  • 打赏
  • 举报
回复
whykarmen(喵喵)兄高见!
Knight_T 2002-04-03
  • 打赏
  • 举报
回复
大家不要误会,我只是想看看我是三角还是星,有几颗?
jianhenk 2002-04-03
  • 打赏
  • 举报
回复
刚学c++,
我想我以后会回答上的
xunknown 2002-04-03
  • 打赏
  • 举报
回复
考试不及格!
勉励前行 2002-04-03
  • 打赏
  • 举报
回复
1.C++面向对象的核心是指什么?
我認為是重用,封装继承和多态的核心是重用,(记得c++编程思想说是“抽象”,抽象是為了更好地重用),
9.谈谈你对“抽象”的看法,如何在你的工作中使用“抽象”
抽象:當一個不知道的人在听一個知道的人講時,容易抽象.
sam1111 2002-04-03
  • 打赏
  • 举报
回复
faint,
这也能叫基础?
salaciouswolf 2002-04-03
  • 打赏
  • 举报
回复
好好学习, 天天向上!
loop:
exit();
whykarmen 2002-04-02
  • 打赏
  • 举报
回复
首先说一些闲话,这种某某大公司的面试题很多,也只能作为参考,
个人认为并不能作为评价一个人(更准确的说是一位合格的软件工程
师)能力的标准,因为他们的题目多具有倾向性,偏向于他们自己的研发
方向,而且经常可以见到出题人自己也不是很确定的情况,出的题目
模糊不清,甚至是错的:(。老实说就算这11道题那位高手能全部答
出来,也不能断定他是优秀的软件工程师,也许能说他是好程序员。
软件并不只是这些,恰如汉字不只是四种写法的“回”字,当然我这
么说不恰当,我自己也答不全,不过我得意思想必大家都明白^_^.
1。恕我愚昧,什么叫做“C++面向对象的核心”?C++的核心就是
C++的核心,面向对象的核心就是面向对象的核心,C++实现面向
对象的思想并不因为他跟C渊源深厚就跟java有所不同,面向对象是
思想是方法论,跟具体语言有什么关系?而且我孤陋寡闻的紧,也不
熟悉“面向对象的核心”这个词,真的不熟悉,我只知道面向对象的
特征是封装继承多态,说起来最根本的是封装,继承和多态建立在前
者的基础上,也许封装是核心?请高人有以教我。
2。3。一般而言,编译器对静态变量和全局变量的处理是相同的,
4。谢谢neccui(PPC)兄,我答不出数据段有RW和RO两种
5。这一问我赞同楼上各位的解答,堆由操作系统控制,栈由进程控制,
分为系统栈和用户栈。
但是严格说来,2、3、4、5四题都远不是这么简单,这些问题都与特定
的硬件、OS、编译器有关,比如我们要是自己写编译器就可以把静态变
量和全局变量按照不同的方式处理,而在编译器不提供支持的情况下,
数据段也可能只有RW一种,甚至堆也不完全说由OS控制,C程序的堆就由
C运行时自己控制(至少目前win平台上是这样,当然它最终不可能绕过
OS),而线程也有自己的栈。
6。面相对象是思想,甚至面向对象分析设计+非面向对象实现也可以。
7。多态本身就不只虚函数一种表现形式,所以这一题出的实在不怎么
样(个人认为)。
8。关于inline和friend的话题大家都熟极而流了,呵呵
不过关于friend我得看法是他并不只是为了封装和效率的折衷,某些
情况下他还有特殊的用处。
9。抽象。。。哦,杀了我吧
10。hash?
11。不一定,不过我OS的知识已经忘的差不多了,实在说不出多的了,
shy
jaidy 2002-04-02
  • 打赏
  • 举报
回复
学习中。。。
xzy001120 2002-04-02
  • 打赏
  • 举报
回复
华为有一次在电话里考过我这些问题
lianhuiyong 2002-04-02
  • 打赏
  • 举报
回复
可能是,不过很有用!
squallcpp 2002-04-02
  • 打赏
  • 举报
回复
looking
jlover 2002-04-02
  • 打赏
  • 举报
回复
华为的面试题
neptunez 2002-04-02
  • 打赏
  • 举报
回复
learned a lot, although no too much use
iforem 2002-04-02
  • 打赏
  • 举报
回复

vcbear (一只平凡无知@贫穷无钱¥的熊) :

面试通过了吗?你是南京的?

我最近也在找工作
加载更多回复(85)

15,447

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧