首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优秀的C++知识

优秀的C++知识
EN

Software Engineering用户
提问于 2012-05-21 00:18:04
回答 6查看 3.8K关注 0票数 8

最近,我看到了一家软件公司的招聘页面,其中一个要求是“优秀的C++知识”。

现在,我知道这在某种程度上意味着C++的专家知识,但是专家知识到底适合哪里呢?这是8年语言编程的知识和经验吗?掌握和了解特定领域的来龙去脉。或者,它是一种更全面、表面的方法来处理一个或多个领域,同时更详细地理解整个语言?

例如,您不能同时编写系统驱动程序和游戏引擎。那么,这些优秀的或专家的知识在哪里呢?

EN

回答 6

Software Engineering用户

回答已采纳

发布于 2012-05-21 00:51:24

如果他们说“优秀的知识”,那么您应该能够正确地识别和使用语言的所有特性--包括来自最新C++11标准的特性,这些特性目前是普遍支持的(不幸的是,这意味着Visual是这里的最低公共分母)。拥有优秀C++知识的人可以创建自己的类型特征或表达式模板;他们可以构建自己的容器、算法和分配器。他们知道什么时候使用继承,什么时候使用模板,什么时候不使用。他们知道如何使用RAII来管理所有需要清理的州。

此外,它们还可以处理C样式的垃圾交互,因为不幸的是,这仍然是语言的一部分。

票数 17
EN

Software Engineering用户

发布于 2012-05-21 04:25:22

我认为对于什么是C++的“优秀”知识,没有一个被广泛接受的定义。

对于什么是“好”、“优秀”、“极好”(等等),很难给出一个清晰的答案。对任何语言,框架,平台,或什么有你的知识。在许多情况下,很难在真正有用的知识和基本知道很多琐事的知识之间划清界限。

对于像C++这样的东西来说尤其如此,它已经存在了几十年,以许多不同的方式应用,并在那段时间里以许多不同的风格编写。有些人可以学到一种几乎与用它解决问题完全无关的语言,这几乎是令人恐惧的。了解所有事情的规则,如重载解析或函数模板的偏序,只有当您试图雇用某人从事编译器(或非常类似的工作)时,才可能有用。自从C++第一次广泛使用以来,我就一直使用它,并且还没有在实际代码中使用(甚至希望)函数模板的部分顺序。

虽然在技术上对这个问题没有反应,但我还是建议那些在招聘广告中加入这类要求的人,尽量保持某种平衡。我认为过于强调编程语言,而牺牲了诸如问题解决能力和一般算法。很好地了解一种编程语言有助于很好地表达解决方案,但通常对设计解决方案本身的帮助微乎其微。一个很好的解决方案--表达得不好--几乎总是胜过平庸的解决方案,不管它表达得有多好。

票数 8
EN

Software Engineering用户

发布于 2012-05-21 00:22:58

我希望这样的人符合C++标准、新添加的概念、构造和关键字。例如,他至少应该知道rvalue引用是什么以及它为什么会有用。

票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/149416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档