首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C+基础入门学什么?后期开发学什么?

C++语言诞生至今已有30多个年头了,主要集中在需要运行效率比较高的行业,比如现在的游戏开发以及高效服务器等等。

C++学习难度比其它语言都要高,这是不可否认的,其学习难度主要在于它的复杂性,如何入门C++,想必很多人都头疼过。讲到入门,我们首先是掌握基础语法,C++的语法是和C语言的语法很相近。

要点一:掌握数据类型表达式。

要点二:掌握数据类型,运算符和表达式以及控制语句的要点。

要点三:掌握函数的传值类型以及函数返回类型。

要点四:学习函数的参数类型和返回值类型分别为三种,引用,对象和指针三种类型。

C++是一门面向对象的语言,其面向对象语言特性:抽象,封装,继承,多态。这些特征总结对象的特性。掌握面向对象编程思想有助于我们更好理解和编写编码。

01

语言

在掌握基础知识之后,进阶开发我们不讨具体技术,只说我们应该学习什么东西。

我们要成为程序猿,要学习的很杂。学语言初期要选择好一本书,在此推荐一本《C++ Primer》,这本书很厚,内容也很丰富,对知识的讲解不仅仅停留在表面。如果这本书能有耐心看完,语言方面基本就没有什么大问题了,对以后的学习也打下了一个很好的基础。

02

GUI

03

数据结构和算法

很多人都忽视了数据结构和算法方面的知识,尤其是一些编程语言的库做得非常好,几乎不需要自己去实现一些数据结构和算法,导致现在很多程序员不重视甚至忽略这方面的知识。但是,当我们想让我们的程序跑的更快、内存占用更少的时候,这些知识就非常非常重要了。小编推荐一个学C/C++的学习裙【六二七,零一二,四六四】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有很多干货和技术分享!很多程序员都是刚开始的时候不重视这些,但是工作几年后又来补习这些知识。

最开始可能不需要学习的太深入,但是基本的数据结构和算法一定要知道。推荐《数据结构(C语言版)》,在数据结构和算法的学习中,最好不要去关心面向对象方面的技巧,就用C语言来实现,这样能更关注于算法本身的内容。

04

数据库

学习数据库的基础知识,并且掌握一种数据库使用,推荐使用mysql,而且最好不要用一些封装好的接口,而应该直接用mysql提供的数据库api,可能对数据库了解的会更深入。

05

并行

cpu主频已经不能遵循摩尔定律了,现在cpu发展的趋势是多核心。无论是多线程,还是多进程,都是为了更好的利用cpu的性能,提供更好的用户体验。这就要求我们如果要写出高效的应用程序,必然要涉及到并行计算。多花些精力在并行计算上吧,一定会有丰富的回报。

06

网络编程

这里所指的网络编程是指socket编程。现在C++的应用很多都是在做服务器开发,如何开发一个高并发、大吞吐量、高稳定性的服务器就是我们要考虑的了。

07

设计模式

设计模式不是具体的技术,更多的是如何让代码更容易阅读、更好扩展、更容易使用。

08

库的使用

C++标准库仅仅提供了一些很基本的功能,所以我们经常会引入一些第三方库。最著名的恐怕就是被称为准标准库的boost库,它提供了我们编程中用到的各方面的技术,文本处理、算法、网络、多线程、图像处理等等,几乎无所不包。其它也有一些专著于某一方面的库,比如ACE是网络通信方面的,TinyXML是解析xml的,OGRE是图形渲染方面的。

09

操作系统的知识

程序员需要了解的操作系统知识和普通用户是不一样的,一个高手是需要深入了解操作系统的方方面面,而不是停留在使用层面。至于应该了解哪些知识,windows上的去看《windows核心编程》,linux的去看《深入理解linux内核》,应该可以知道自己应该学什么了。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180222A0UO4400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券