想要彻底理解C 11和C 14,不可止步于熟悉它们引入的语言特性(例如,auto型别推导、移动语义、lambda表达式,以及并发支持)。挑战在于高效地运用这些特性,从而使你的软件具备正确性、高效率、可维护性和可移植性。这正是本书意欲达成的定位。它描述的正是使用C 11和C 14(即现代C )来编写真正卓越的软件之道。涵盖以下主题:大括号初始化、noexcept规格、完美转发,以及智能指针的make函数的优缺点。std::move、std::forward、右值引用和*引用之间的联系。编写整洁、正确,以及高效的lambda表达式的方法。std::atomic和volatile有怎样的区别,它们分别用于什么场合,以及它们和C 的并发API有何联系。 旧 C 程序设计(即C 98)中的实战要求在现代C 的软件开发中作出哪些修订。
有人说C++程序员可以分为两类,读过Effective C++的和没读过的。世界很好C++大师Scott Meyers成名之作的第三版的确当得起这样的评价。当您读过这本书之后,就获得了迅速提升自己C++功力的一个契机。 在国际上,本书所引起的反响,波及整个计算机技术的出版领域,余音至今未绝。几乎在所有C++书籍的推荐名单上,本书都会位于前三名。作者高超的技术把握力、独特的视角、诙谐轻松的写作风格、独具匠心的内容组织,都受到极大的推崇和仿效。这种奇特的现象,只能解释为人们对这本书衷心的赞美和推崇。 这本书不是读完一遍就可以束之高阁的快餐读物,也不是用以解决手边问题的参考手册,而是需要您去反复阅读体会的,C++是真正程序员的语言,背后后精神的思想与无以伦比的表达能力,这使得它具有类似宗教般的魅力。希望这本书能够帮您跨越C++的重重险阻,
本书内容结构科学合理,从C 编程基础到核心概念,循序渐进,即便是编程零基础的读者也能轻松上手。通过精心设计的章节,孩子能够逐步掌握编程环境配置、基础语法、逻辑控制等关键技能。书中不仅有详尽的理论解析,还配备大量与青少年生活紧密相关的实例,如制作九九乘法表、排序等,充分考虑了青少年的兴趣和特点,案例既典型又实用,鼓励孩子们通过动手实践,开发属于自己的小项目,从而激发他们的创造力和学习热情。
Python是一门既简单又强大的编程语言,被广泛应用于数据分析、大数据、网络爬虫、自动化运维、科学计算和人工智能等领域。Python也越来越重要,成为国家计算机等级考试科目,某些中小学也开设了Python编程课程。本书秉承有趣、有料、好玩、好用的理念,通过3个漫画人物的轻松对话、搞笑形象及夸张动作,把复杂的Python技术问题简单化。 本书总计16章:第1章介绍Python的历史和特点,并进行开发环境搭建;第2~5章介绍Python的基础知识,包括数据类型、表达式、流程控制等;第6~7章介绍Python常用的容器类型数据和字符串数据;第8~11章介绍Python的进阶内容,包括函数、类与对象、异常处理、常用内置模块等;第12~16章介绍Python实用库的使用方法,包括文件读写、图形用户界面、网络通信、数据库访问和多线程等。 本书在每一章中都安排了“动动手”环节,您
本书不仅要教会读者如何使用Unity Shader,更重要的是要帮助读者学习Unity中的一些渲染机制以及如何使用Unity Shader实现各种自定义的渲染效果,希望这本书可以为读者打开一扇新的大门,让读者离制作心目中杰出游戏的心愿更近一步。 本书的主要内容为:第1章讲解了学习Unity Shader应该从哪里着手;第2章讲解了现代GPU是如何实现整个渲染流水线的,这对理解Shader的工作原理有着非常重要的作用;第3章讲解Unity Shader的实现原理和基本语法;第4章学习Shader所需的数学知识,帮助读者克服学习Unity Shader时遇到的数学障碍;第5章通过实现一个简单的顶点/片元着色器案例,讲解常用的辅助技巧等;第6章学习如何在Shader中实现基本的光照模型;第7章讲述了如何在Unity Shader中使用法线纹理、遮罩纹理等基础纹理;第8章学习如何实现透明度测试和透明度混合等透明效果;第9章讲
本书示例丰富,图文并茂,以简明易懂的方式阐释了算法,旨在帮助程序员在日常项目中更好地利用算法为软件开发助力。前三章介绍算法基础,包括二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如何时采用分而治之、贪婪算法或动态规划,哈希表的应用,图和树算法,K最近邻算法等。这一版将示例代码更新到了Python3,并新增了两章专门讨论树,加之诸多修订,使得内容更加完善。本书适合程序员、计算机专业相关师生以及对算法感兴趣的读者阅读。
使用本书可以快速成为出色的数据库应用开发人员和用户。本书包含了实用而详细的示例,提供了使用T-SQL和C#建立数据库应用程序所需的知识和技巧,并且全面介绍了SQL Server 2012和Visual Studio2012。 本书完整地介绍了数据库技术,讨论了关系数据库的工作原理及其用法,循序渐进地介绍T-SQL和C#范例,揭示了在数据库编程时,如何使用ADO.NET和其他数据访问技术。 主要内容 使用SQL Server2012创建数据库和表对象 编写SQL查询,修改和查询(包括连接)SQL表中的数据 使用C#建立GUI数据库应用程序 处理运行期间出现的异常情况 使用ADO.NET EntityFramework和LINQ编程 使用T-SQL编写存储过程,并在C#中调用它们 使用SQL CLR和C#创建存储过程 本书为C# 5.0和Visual Studio 2012进行了全面修订和更新。无论读者是刚开始使用C#编程,还是该语言的专家,本书都包含了开发专业的数据库应用
作者Lippman参与设计了全世界第一套C++编译程序cfront,这本书就是一位伟大的C++编译程序设计者向你阐述他如何处理各种explicit(明确出现于C++程序代码中)和implicit(隐藏于程序代码背后)的C++语意。 本书专注于C++面向对象程序设计的底层机制,包括结构式语意、临时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承。这本书让你知道:一旦你能够了解底层实现模型,你的程序代码将获得多么大的效率。Lippman澄清了那些关于C++额外负荷与复杂度的各种错误信息和迷思,但也指出其中某些成本和利益交换确实存在。他阐述了各式各样的实现模型,指出它们的进化之道及其本质因素。书中涵盖了C++对象模型的语意暗示,并指出这个模型是如何影响你的程序的。 对于C++底层机制感兴趣的读者,这必然是一本让你大呼过瘾的绝妙好书。
继Effective C++之后,Scott Meyers于1996推出这本“续集”。条款变得比较少,页数倒是多了一些,原因是这次选材比“第一集”更高阶,尤其是第5章。Meyers将此章命名为技术(techniques),并明白告诉你,其中都是一些patterns,例如virtual constructors,smart pointers,reference counting,proxy classes,double dispatching……这一章的每个条款篇幅都达15~30页之多,实在让人有“山重水复疑无路,柳暗花明又一村”之叹。 虽然出版年代稍嫌久远,但本书并没有第2版,原因是当其出版之时(1996),C++ Standard已经几乎定案,本书即依当时的标准草案而写,其与现今的C++标准规范几乎相同。而且可能变化的几个弹性之处,Meyers也都有所说明与提示。读者可以登录作者提供的网址,看看上下两集的勘误与讨论(数量之多,令人惊恐。幸好多是技术讨论或文字斟酌,并没有什么重大误失)。
本书分为两部分。在第I部分中,你将学习到如何为C编程语言专门实施用于实战设计的知识。第II部分包括将C编程模式应用于实现大型程序的经验。你将了解到如何通过拥有良好的设计决策的设计模式使得生活更轻松。本书包括以下模式:错误处理。返回错误信息。内存管理。从C函数返回数据。数据的生命周期和所有权。灵活的API。灵活的迭代器接口。在模块化程序中组织文件。逃离#ifdef地狱。
本书以图配文的形式,直观易懂地介绍了面向对象的全貌及其包含的各项技术,包括面向对象编程、框架、设计模式、UML、建模、面向对象设计和敏捷开发方法等。对于各项技术是如何使用的(How),书中只进行简要的说明,而重点介绍这些技术是什么(What),以及为什么需要这些技术(Why)。另外,“编程往事”专栏介绍了作者年轻时的一些经历;“对象的另一面”专栏以与正文不同的视角讲解面向对象这一概念普及的背景和原因,通俗有趣;“当今的OOP”专栏介绍了Java、Python、Ruby、JavaScript等当今流行的编程语言的近期新动向。本书适合各层次软件开发人员阅读,也可作为计算机专业学生的参考读物。
专为编程零基础的财务人员编写的办公自动化案例型图书,从最基础的软件安装到行业中的实战应用,涵盖财务数据爬取与挖掘、财务表格与文档自动生成、财务数据自动化处理与分析、财务票据批量识别与验真等,由浅入深,一学就懂。 本书的内容编排由浅入深、循序渐进,所有代码都配有详尽、易懂的注释,让读者能够更加轻松地入门和进阶。配套学习资源包含案例的素材文件和代码文件,便于读者边学边练,在实际动手操作中加深印象。加入本书的QQ群还能获得线上答疑服务,让读者的学习无后顾之忧。
《零基础学C++》(升级版)从初学者的角度出发,通过通俗易懂的语言、流行有趣的实例,详细地介绍了使用C++语言进行程序开发所需要掌握的知识和技术。全书共分为16章,包括初识C++,C++语言基础,运算符与表达式,条件判断语句,循环语句,函数,数组、指针和引用,结构体与共用体,面向对象编程基础,类和对象,继承与派生,模板,STL(标准模板库),RTTI与异常处理,文件操作,坦克动荡游戏等内容。书中所有知识都结合具体实例进行讲解,设计的程序代码给出了详细的注释,可以使读者轻松领会C++语言程序开发的精髓,快速提高开发技能。 本书适合作为C++语言程序开发入门者的自学用书,也适合作为高等院校相关专业的教学参考书,还可供开发人员查阅、参考。
《C Primer Plus(第6版)中文版》详细讲解了C语言的基本概念和编程技巧。《C Primer Plus(第6版)中文版》共17章。、2章介绍了C语言编程的预备知识。第3~15章详细讲解了C语言的相关知识,包括数据类型、格式化输入/输出、运算符、表达式、语句、循环、字符输入和输出、函数、数组和指针、字符和字符串函数、内存管理、文件输入输出、结构、位操作等。6章、17章介绍C预处理器、C库和数据表示。本书以完整的程序为例,讲解C语言的知识要点和注意事项。每章末设计了大量复习题和编程练习,帮助读者巩固所学知识和提高实际编程能力。附录给出了各章复习题的参考答案和丰富的参考资料。《C Primer Plus(第6版)中文版》可作为C语言的教材,适用于需要系统学习C语言的初学者,也适用于巩固C语言知识或希望进一步提高编程技术的程序员。
《迷宫程序设计》是一本专门探讨用编程的方式设计与实现迷宫的书,从最简单的方格迷宫讲起,介绍迷宫程序设计的基本方法和技巧,然后讲解如何设计形状各异的二维迷宫,比如把迷宫放到立方体表面、球面,甚至莫比乌斯环上去。最后讲解多维迷宫,让迷宫在不同的层次上穿行。书中的所有迷宫都附有代码。本书内容由浅入深,只需掌握最基本的编程概念即可以开始学习,尤其适合程序员和游戏爱好者阅读。
《C++并发编程实战》是一本基于C++11新标准的并发和多线程编程深度指南。内容包括从std::thread、std::mutex、std::future和std::async等基础类的使用,到内存模型和原子操作、基于锁和无锁数据结构的构建,再扩展到并行算法、线程管理,还介绍了多线程代码的测试工作。本书的附录部分还对C++11新语言特性中与多线程相关的项目进行了简要的介绍,并提供了C++11线程库的完整参考。 《C++并发编程实战》适合于需要深入了解C++多线程开发的读者,以及使用C++进行各类软件开发的开发人员、测试人员。对于使用第三方线程库的读者,也可以从本书后面的章节中了解到相关的指引和技巧。同时,本书还可以作为C++11线程库的参考工具书。
本书提供与C语言编程相关的全面资源和深入讨论。本书通过对指针的基础知识和特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。全书共18章,覆盖了数据、语句、操作符和表达式、指针、函数、数组、字符串、结构和联合等几乎所有重要的C编程话题。书中给出了很多编程技巧和提示,每章后面有针对性很强的练习,附录部分则给出了部分练习的解答。 本书适合C语言初学者和初级C程序员阅读,也可作为计算机专业学生学习C语言的参考。