C++的学习资源
本文总结了几个好的C++网站,以及C++方面的经典书籍。所列书籍或标准可以到这里找找电子版。
wikipedia关于C++有关条目,注意看后面“参考文献”和“外部链接”:
C++ programming language:介绍C++
C++ Standard Library:C++标准库,介绍了所有51个头文件
C++ STL:STL是C++标准库的一部分(也有人用STL表示C++标准库)
Boost (C++ libraries):被称为准标准库,C++11标准库很多是采纳Boost库的
Outline of C++:列举了和C++相关的概念,如“一次定义准侧”、“元编程”
C++学习参考网站:
cplusplus.com:查库函数特方便,有示例代码
cppreference.com:致力于提供convenient version of the C and C++ standards
learncpp.com:一个C++教程
cs.stmarys.ca/~porter/:有C++标准库快速预览文章
Bjarne Stroustrup:C++之父的主页
The C++ Standards Committee:C++标准委员会
Standard C++ Foundation:标准C++基金会
boost.org:Boost库主页
C++的经典书籍(一个网站做了很好的列举):
Programming -- Principles and Practice Using C++, Bjarne Stroustrup, 2008,有中文译本:C++程序设计原理与实践
The C++ Programming Language (4th Ed), Bjarne Stroustrup, 2013,旧版有中文译本:C++程序设计语言
C++ Primer (5th Ed), Stanley Lippman et al., 2012,有中文译本
Inside The C++ Object Model, Stanley Lippman, 1996,有中文译本:深度探索C++对象模型
Effective C++, Scott Meyers,还有More Effective C++,有中文译本
Exceptional C++, Herb Sutter,More Exceptional C++,有中文译本
The C++ Standard Library -- A Tutorial and Reference (2nd Ed), Nicolai M. Josuttis, 2012,旧版有中文译本:C++标准程序库
C++ Templates -- The Complete Guide, Vandevoorde David, 2002,有中文译本:C++ Templates中文版
C++ Template Metaprogramming -- Concepts, Tools, and Techniques from Boost and Beyond, Abrahams David et al., 2004,有中文译本:C++模板元编程
C++标准(C++标准的进程见标准C++基金会):
ISO/IEC 14882:1998(C++98)
ISO/IEC 14882:2003(C++98修订,建议参考)
ISO/IEC 14882:2011(C++11)
C语言相关:
ISO/IEC 9899:1990(经典C语言)
ISO/IEC 9899:1999(俗称C99)
The C Programming Language (2nd Ed), Dennis M. Ritchie et al., 1988,有中文译本:C程序设计语言
面向对象相关:
UML Distilled -- A Brief Guide to the Standard Object Modeling Language (3rd Ed), Martin Fowler, 2003,有中文译本:UML精粹:标准对象建模语言简明教程
Design Patterns -- Elements of Reusable Object-Oriented Software, Erich Gamma et al., 1994,有中文译本:设计模式--可复用面向对象软件的基础
Object-Oriented Analysis & Design -- Understanding System Development with UML 2.0, Mike O'Docherty, 2005,有中文译本:面向对象分析与设计
计算理论、算法:
Introduction to the Theory of Computation (3rd Ed), Michaael Sipser, 2012,旧版有中文译本:计算理论导引
Introduction to Algorithms (3rd Ed), Thomas H.Cormen et al., 2009,有中文译本:算法导论
C++编程练习:
C++的学习应该以编程训练为主,这应该都认同吧。如果觉得没有C++编程练习的途径,我给你推荐一个:OJ,全称Online Judge,中文叫做在线测评系统。有很多问题,你来编程解决,它在线线测试你程序运行结果正确性,一般还附加程序运行时间和内存消耗限制(一般是1秒和1MB)。对同问题的不同解决代码,会用运行时间和消耗内存排名。大名鼎鼎的ACM程序设计竞赛(ACM International Collegiate Programming Contest,ACM-ICPC)就采用类似形式。下面是几个有名的OJ,题目的难度从天才级到A+B级都有:
Baylor University OJ (该大学是ACM-ICPC总部,上面有ACM-ICPC题)
UVa Online Judge(配合《算法竞赛入门经典--训练指南》(刘汝佳等,清华大学出版社,2012))
点击“Problems”浏览题目,“Submit”提交代码,注册账号开始挑战吧~
C++的学习资源的更多相关文章
- springboot 学习资源推荐
springboot 是什么?对于构建生产就绪的Spring应用程序有一个看法. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.(这是springboot的官方介绍) 我们为什么要学 ...
- Redis初识、设计思想与一些学习资源推荐
一.Redis简介 1.什么是Redis Redis 是一个开源的使用ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库,并提供多种语言的API.从2010 年 ...
- 一份关于Swift语言学习资源的整理文件
一份关于Swift语言学习资源的整理文件 周银辉 在这里下载 https://github.com/ipader/SwiftGuide
- angularJS学习资源最全汇总
基础 官方: http://docs.angularjs.org angularjs官方网站已被墙,可看 http://www.ngnice.com/: 官方zip下载包 https://github ...
- Scala学习资源
Scala学习资源: Scala官方网站:http://www.scala-lang.org/ Scala github:https://github.com/scala/scala Twitter ...
- .net 网站开发学习资源
慕课网 前端基础学习 http://www.imooc.com/course/list?c=fe 了解需求 例子之一 http://wenku.it168.com/d_000517899.shtml ...
- OpenGL的学习资源
OpenGL是3D图形接口工业标准,使用上非常简单,所有API不过上百个函数,但理解OpenGL就没那么简单,本文总结OpenGL的学习资源,包括官方资料.网上教程.示例程序等. Wikipedia: ...
- Bullet的学习资源(用Doxygen生成API文档)
Bullet 全称 Bullet Physics Library,是著名的开源物理引擎(可用于碰撞检测.刚体模拟.可变形体模拟),这里将bullet的学习资源整理一下,希望能帮助入门者少走弯路. 看下 ...
- OGRE的学习资源
本文介绍从哪儿开始学习OGRE(Object-Oriented Graphics Rendering Engine的简称,又叫做OGRE 3D),如何在网上找寻OGRE的学习资源. 首先是wikipe ...
- VTK的学习资源
本文介绍从哪儿开始学习VTK(Visualization Toolkit的简称),如何在网上找寻VTK的学习资源. 首先,可以到维基百科或者百度百科上查看VTK条目,了解VTK是什么. http:// ...
随机推荐
- 安装CAD2006装好了为什么不能用,显示系统错误无法启动此程序,因计算机丢失aclst.dll。尝试重新安装该程序以解
我的电脑,右键 属性——>高级选项卡(win7的是高级系统设置)——>环境变量——>系统变量——>然后新建系统变量 变量名为:AutoCAD 变量值为:c:\program f ...
- 【Python①】python简介,安装以及配置
今天开始学习python,将一些心得和知识点记录下来,如有疏漏或表达问题,欢迎指正.后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 附:2014年8月TIOBE编程语 ...
- python 获取脚本所在目录
平时写python经常会想获得脚本所在的目录,例如有个文件跟脚本文件放在一个相对的目录位置,那就可以通过脚本文件的目录找到对应的文件,即使以后脚本文件移到其他地方,脚本也基本不需要改动(相对于写死目录 ...
- 7个步骤:让JavaScript变得更好
Dan Odell介绍了他编写的七步写出无瑕代码的计划,是在简化过程中最有用的工具. 随着浏览器性能提高,伴随着新的HTML5的编程接口的稳步采用,网页上的JavaScript的音量在逐渐增加.然 ...
- Mybatis中#{}和${}传参的区别
1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111&qu ...
- JSP内置对象---request对象(用户登录页面(返回值和数组:gerParameter,getParameterValues))
创建两个jsp页面:reg.jsp 和 request.jsp reg.jsp: <%@ page language="java" import="java.uti ...
- Adding a WebPart to a SharePoint 2013 Master Page 分类: Sharepoint 2015-07-08 01:03 7人阅读 评论(0) 收藏
On SharePoint 2013 you can not add the Web Parts to the master page the same way of 2010. Please use ...
- SQL Server中cursor的使用步骤
参考文章: http://www.cnblogs.com/knowledgesea/p/3699851.html http://www.cnblogs.com/moss_tan_jun/archive ...
- Git典型使用场景
1. 在本地创建版本库(把本地的一个目录内的文件纳入版本库管理,方便查看变动历史,恢复版本等.不限于代码,可以是笔记等所有需要追踪历史的文件.) git init -- 把当前目录初始化为版本库 2. ...
- asp.net mvc api auth
一.登录 /// <summary> /// 获取令牌 /// </summary> /// <param name="userName">用户 ...