首先你要知道你想去什么样的公司实习,因为不同的公司的要求完全不一样。
一些互联网小公司的话,面试和笔试都很基础,就是课程水平的,写写简单的排序算法和指针链表就差不多了,入门级的水平。
像百度阿里腾讯这样的大公司,当然水平要比这个要高一些,在基础之上还会有比较入门的算法的考察,比如:图论,二分,动态规划等等。我有个同学曾接到百度的电话面试,题目是:在不借助sqrt()函数的情况下,如何实现高精度的开方。题目不难,但是比较灵活,算是对于各种算法有一定了解的水平。
而再往上面,微软谷歌这样的,那你得有ACM的基础才行了,像后缀树这样的东西普通的编程学习都不会接触到。我一个同学获得了ACM亚太赛金牌并通过了微软的面试,题目大概是设计算法找到一组数的中值,对算法的时间复杂度优化有很高的要求,是综合实力很高的水平。
另外好像实习面试题目都不难,思维灵活更重要。
最后推荐两个网站:http://leetcode.com和http://www.hihocoder.com/,前一个上面有很多互联网公司的评测题目,如果你在找实习或找工作前能把这个题库刷完了,那你基本上找工作和实习都很轻松了。后一个类型类似,但是它每周都会有一个微软的笔试题,微软的在线笔试也在上面。
你想搞哪方面?游戏还是什么?所谓的独立编写代码,真正上班之后,公司给你安排任务,你在规定时间做完就行了,至于手段就没要求了,这样呢,方法就很多了,可以求大神呢,当然你也可以自己做喽。你现在呢,做点项目出来(网上一搜一大片,照着做),找工作时能拿出来就是实力了,找个工作实习倒是不难,大学里面打好基础才是关键,好好静下心来看看书吧。
自己多看一些招聘网上面对C++的要求也就知道了,
比如从某网站上复制的C++软件工程师职位描述岗位职责:
1、负责公司软件的开发工作(包括详细设计、编码、测试,文档)
2、根据需求进行模块级别的设计,并书写文档
3、根据设计文档编写代码
4、能独立负责整个项目的开发过程
具备以下条件优先录取
1、熟悉串口通信、Socket、多线程 编程;
2、熟悉多媒体领域知识;
3、智能交通和DLP拼接行业背景优先
任职资格:
1、计算机相关专业毕业,本科及以上学历;
2、熟练掌握C/C++,有三年以上的相关开发经验;
3、熟练使用Visual Studio开发环境;对MFC架构精通,熟悉TCP/IP协议,熟悉MFC、Socket、多线程、数据库编程;
4、快速的学习能力,良好的文字表达和团队协作能力;
5、具有编写技术文档的能力与习惯;
6、有团队精神, 工作态度认真负责。
说真的,C++难度大,找到实习工作也是挺困难的,你看过STL源码了吗?写过什么轮子吗,github上有没有很多start呢,Acm有没有拿过牌呢,没有的话你还需要好好学习,
起码把C++ primer 看看
我感觉大学学的跟找工作联系起来很少,但是基础很重要,代码量很重要,能让你很好的融进团队。提高你的效率。
你可以包给印度人做