-
零起点学通C++
2017-10-30 16:49:51零起点学通C++教程全集,一部优秀的C++入门教程,是百度云链接 -
零起点学通c++
2012-02-25 22:33:52一本从最基础介绍c++只是的文档,讲解非常细,特别适合c++零基础学习的朋友,也适合巩固C++基本知识的朋友 -
零起点学通C++代码
2014-12-01 23:12:16《零起点学通C++》范磊,初级高级原代码 -
零起点学通C++ 范磊.pdf
2018-05-03 09:35:00零起点学通C++ 范磊.pdf 是一本非常实用且适合入门的c++编程书 -
C++视频教程(零起点学通c++).txt
2019-05-15 18:54:36内有播放器,零起点学通C++,欢迎下载,此链接悠久有效 -
零起点学通c++完全版范磊.txt
2019-07-17 13:30:39《零起点学通C++:多媒体范例教学》总结了十几本C++图书及教材,从零开始、由浅入深、层层递进、细致而又详尽地讲解c十+这门大型编程语言。《零起点学通C++:多媒体范例教学》知识系统全面,拥有字典般的容量,可随用... -
零起点学通c++完全版范磊.pdf
2018-01-03 14:30:26零起点学通c++完全版范磊.pdf -
零起点学通C++随书源代码
2015-04-14 16:41:59范磊的《零起点学通C++》随书源代码 很适合新手 想学习c++的筒子们赶快行动起来把 上手容易 适用于初学者哦 -
零起点学通c++ PDF版
2012-06-21 15:44:19《零起点学通c++》这本书的 PDF版,自己转的 喜欢的就下载,挣点分! -
《零起点学通C++》+《Visual C++:入门到精通》+《C++ Primer》
2018-08-02 09:38:36本资源包括: 《C++ Primer》 《零起点学通C++》 《Visual C++:入门到精通(第三版)》 -
零起点学通C++光盘镜像。
2011-08-14 19:18:22全网首发,零起点学通C++的光盘镜像,本文是文本文件,里面有下载地址,不欺诈,不隐瞒,保证可下载。 -
范磊C++视频教程(零起点学通c++)
2019-05-20 22:39:45C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的...零起点学通C++全...C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。
零起点学通C++全视频全487讲。总结了十几本C++图书及教材,从零开始、由浅入深、层层递进、细致而又详尽地讲解C++这门大型编程语言。知识系统全面,拥有字典般的容量,可随用随查,涵盖指针、面向对象、操作符重载、流、命名空间、模板、异常处理、宏等主流C++开发技术。为了使读者能够活学活用。
本套视频可适合从未学习过任何编程语言的新手,以及学习C语言多年,仍不能融会贯通的读者,对于正在使用C语言进行开发的程序员也有很好的参考价值。
下载地址:百度网盘
-
范磊 零起点学通C++打包下载列表
2009-10-28 20:04:26范磊老师的零起点学通c++下载地址。。。。。。。。。。。。。。。。 -
零起点学通C++ 范磊
2018-08-16 18:06:07完整版,讲解详细,有实际的例程,理论与实例相结合, -
范磊零起点学通c++
2014-07-19 20:28:16本人正在零基础自学C++,别人推荐给我的资源,感觉很适合初学,转享一下 -
从新手到高手(零起点学通C++ )范磊著(压缩卷1)
2012-08-03 13:30:17PDF电子书共65M含25章全部内容,由于上传文件大小限制,特分两卷压缩上传,此为压缩卷1,请搜索并下载“从新手到高手(零起点学通C++ )范磊著(压缩卷2)”,而后方能一起解压出PDF书籍。祝学习愉快。 很不错的入手... -
零起点学通C++.
2013-03-29 21:51:23入门书,如其名,讲的很细,本人C++靠这本书入的门。 -
零起点学通C++光盘镜像
2012-03-18 02:45:37从新手到高手C++全方位学习》总结了十几本C++图书及教材的优点,摈弃了它们语言拖沓、层次结构混乱等缺陷,从零开始、由浅入深、层层递进、细致而又详尽地讲解C++这门大型编程语言。《从新手到高手C++全方位学习》... -
从新手到高手(零起点学通C++ )范磊著(压缩卷2)
2012-08-03 13:36:52PDF电子书共65M含25章全部内容,由于上传文件大小限制,特分两卷压缩上传,此为压缩卷2,请搜索并下载“从新手到高手(零起点学通C++ )范磊著(压缩卷1)”,而后方能一起解压出PDF书籍。祝学习愉快。很不错的入手... -
零起点学通C++光盘镜
2012-12-12 00:02:46从新手到高手C++全方位学习》总结了十几本C++图书及教材的优点,摈弃了它们语言拖沓、层次结构混乱等缺陷,从零开始、由浅入深、层层递进、细致而又详尽地讲解C++这门大型编程语言。《从新手到高手C++全方位学习》... -
范磊零起点学通C++part2
2014-07-19 20:58:21别人给的资源,转享一下,注意:三个part都需要下载,否则会有问题 -
范磊 零起点学通C++part3
2014-07-19 20:45:22转享的东西,请注意三个压缩包都要下载,否则文件会缺损 -
零起点学通C++多媒体范例教学代码
2010-11-30 09:35:131.3 学习c++之前需要先学C吗 1.4 c++与其他语言的区别 1.5 c++的版本以及安装问题 第2章 做一个最简短的C4-+程序 2.1 简单的屏幕输出小程序 2.2 输出语句的使用 2.3 std::介绍 2.4 iostream与iostream.h的区别 ... -
零起点学通C++学习_多媒体范例教学代码
2012-07-16 08:52:531.3 学习c++之前需要先学C吗 1.4 c++与其他语言的区别 1.5 c++的版本以及安装问题 第2章 做一个最简短的C4-+程序 2.1 简单的屏幕输出小程序 2.2 输出语句的使用 2.3 std::介绍 2.4 iostream与iostream.h的... -
零起点学通C++--点滴
2016-08-26 13:14:301、每到一个公司,总得学到东西。 2、工作中严谨,到哪里都是有用的。 3、工作不分大小。 说话的艺术。大家都觉得吕工的思维太快了。 而这几天我感觉家庭和工作的关系没有处理好。不能尽快的从家庭中...我现在的头号大敌就是晚上不睡觉!!!以至于引起白天各种问题!
下午犯困,冷水泼脸,再按压太阳穴做眼保健操3分钟
2016-09-27 周二
vc文件介绍:
.CLW文件
VC Class Wizard信息文件,存放了Class Wizard的信息。
.dsp文件
DeveloperStudio Project,项目文件,文本格式,不过不熟悉的话不要手工修改。
.dsw文件
DeveloperStudio Workspace,是工作区文件,其他特点和DSP差不多
developstudio workspace VC++6.0打开这个文件DSW才能打开编译窗口。API是属于windows操作系统的,是属于微软的 这些API函数是为了给程序员提供编程接口而公开的 同样的C++,VC等等也都可以调用API函数来使用 只是不同的语言的API声明的方法不同罢了 我们所知道的常用的API函数就有几百个,公开的API函数有几千个 还有很多API函数是半公开的或者非公开的,因为这些函数可以操作系统核心,比如Native API。 不用死记硬背,背也背不完 有些不常用的,长时间不用,也会忘的 可以去下个API函数大全,所谓的大全,都是些常用的API函数,有各种语言的声明方法。 或者下载MSDN集合,这个东西越来越大了,以前一张CD光盘就装完了,现在是好些倍的大小,都是编程资料文档。 用到哪些再去查哪些函数的用法。 有些API函数仅仅是用,都相当复杂。 API的主要作用就是,微软已经集成好的一些功能,把这些功能模块化,函数化,便于程序员调用,不必再去花费精力再做一遍复杂的代码了。
Microsoft Developer Network(微软开发者网络)
dc dc.bitblt.
通常我们定义一个基本数据类型的变量,一个对象的引用,还有就是函数调用的现场保存都使用内存中的栈空间;而通过new关键字和构造器创建的对象放在堆空间;程序中的字面量(literal)如直接书写的100、“hello”和常量都是放在静态存储区中。栈空间操作最快但是也很小,通常大量的对象都是放在堆空间,整个内存包括硬盘上的虚拟内存都可以被当成堆空间来使用。
String str = new String(“hello”);
上面的语句中str放在栈上,用new创建出来的字符串对象放在堆上,而“hello”这个字面量放在静态存储区。
补充:较新版本的Java中使用了一项叫“逃逸分析“的技术,可以将一些局部对象放在栈上以提升对象的操作性能。
15.22 创建位图对象。对象的成员里 给加上图片。vc++ debug assertion failed 因为我程序里少 for(int j= 0; j<4;j++) 写成了 for(int j=; j<4;j++) 没有对J进行赋值,结果就直接奔溃了。 这都可以。
VC++6.0 调试 : 介绍调用堆栈 call stack。当故障发生时,如果程序被中断,我们基本上只可以看到最后出错的函数。
15.23
VC++ : fatal error LNK1168: cannot open Debug/Game32.exe for writing 有泄露,程序exe在进程里其实没有关掉。结束也结束不了,就搜索MSDEV.EXT,结束后可以。
调试可以发现错误,非常重要。
然后后来遇到的问题是 exe运行没有显示。原来是图片引用的路径必须跟exe放在一起。
然后走迷宫就成了。
回去给儿子玩玩,好好玩啊哈哈
昨天部门聚会,get到:
1、每到一个公司,总得学到东西。
2、工作中严谨,到哪里都是有用的。
3、工作不分大小。
说话的艺术。大家都觉得吕工的思维太快了。
而这几天我感觉家庭和工作的关系没有处理好。不能尽快的从家庭中抽身出来快速的投入工作,开动在工作中的脑筋。但是家庭里,好像教育孩子这时做什么之类的,因为有孩子的互动,我感觉融入的很快。
跟我在一起的同事,刚开始见我时,觉得我特别干练,很成熟的。 结果共事后觉得我想小孩。。。 这可不是一个好现象。
2016-09-23 周五
昨天被吕工的博学聪慧又打击到了。然后回家的路上一路心情很郁闷。后来在家陪儿子的间隙赶紧看看专业东西,心里立马好受了。说明当你胡思乱想的时候,马上立刻去做引起你焦虑的源头的有意义的事情,能让人心情变好,多了知识人又变充实!双赢啊!
感激马工分享的这个视频,帮助超级大。加油!
链表的使用:创建 显示 插入 删除 统计等功能,一个功能一个函数。
cin.get 输入两次,第一次接收程序输出里的 回车键。第二次cin.get 会提示 按回车返回程序。可以暂停。防止屏幕一闪而过。cin.get只读入一个。
cin.get cin.get 输入 1 2 ,就会第一个1 第二个2.
cin 遇到回车和空格就表示结束。
num = atoi(str.c_str()); 这个解决了我之前一直想着的怎么输入整型的问题。
atoi 函数把字符串的数字转为数字型数值。
c_str()是string类的成员函数,是获取对象字符串的首地址。
eof()可以判断一个数据流格式的文件指针是不是已经到末尾了。
15.1 走迷宫。
afxwin.h MFC的窗口类。
MFC也有资源文件。资源文件是保存声音和图片的。
资源文件里还要关联头文件。这个在QT里是没有的。 类向导,classWizard, 建立文件存放类的信息。
Microsoft foundation classes。
设置项目--创建派生类--应用程序对象创建--初始化函数--
基于MFC框架生成的应用程序必须有且仅有一个从CWinApp派生的类的对象。
句柄是指针的指针。 虚拟内存,内存有限,引进了指针的指针。
15.10
2016-09-13 周三
其实,编程,思路和理论知道都很重要。
建立链表 建立头结点
显示链表 在C++里,NULL就等于0.指针初始化时都给指到NULL是最好的。 链表尾都是要置为NULL的。
删除: 删除头结点 删除非头结点
链表的插入 查空指针,然后把当前指针的next指到插入的对象。
链表的尾插法 :链表的结尾处插入
链表的前插法
2016-09-13 周二
15章 输入字符造成死循环?
链表创建 插入 删除
2016-09-12 周一
链表解决了到底给数组、结构体分配多大空间的问题。 容器 放了东西,还放下一个东西的放置地址。
发现只要是静态 就是编译的时候已经配置好值或者指好对象了的。class也可以是链表,其实跟结构体一样。就是要就一个Public之类的属性。
c语言里会使用malloc和free去操作内存空间的动态分配。 C++里使用new和delete来动态分配。
15.5.1章要不要练习一下。
2016-09-05 周一
14章 字符串输入 遇到空格会怎么样?自动录入结束。
gets(a) 可以解决空格的问题。
如果数组是10,输入20个,控制台会奔溃。
cin.get(a,12);第三个参数默认不设置。
14.34 strcat string catenate的缩写。连接。使用catenate时,前一个字符数组不定义大小,连接后控制台会奔溃。
对象数组,就是一个类给定义一个数组对象。
对象数组初始化每个成员变量
数组对象构造函数执行顺序 是从上而下,而析构函数刚好相反。
栈的内存一般都是有限的。堆中对象。堆的内存一般都很大。
14,24 数组指针
class A
A *one = new A[100]; one[i].成员。
防止内存泄露 数组删除 delete[] one,[]表示删除的是数组。 如果直接delete one,只会 删除one[0],其余的都删不了了。造成内存泄露。
可控可追踪 使用 指针指向 对象数组。
strupr string uppercase (lowercase-uppercase) 字符串小写转大写
strlwr sting lowercase ( uppercase-lowercase)字符串里大写转小写
使用数组,进行杨辉三角形的实现。
运算符的重载
下次15章。
2016-09-02 周五
13章主要的基本明白了。虚析构哈哈,构造是没有虚的。
14章 C++规定 在一个程序里必须只有一个原本。不能有副本,按地址传递。
看到14章22节了。
2016-09-01 周四
静态联编 编译时和运行时的关系一样。
运行时的动态联编 晚期联编 动态束定 使用虚函数就可以实现。必须是指针才能实现动态联编。
CLASS A
A() 创建临时对象 new A创建匿名对象 A a 创建对象 A *a 创建对象指针
基类的对象
基类的指针
基类的引用
2016-08-31 周三
继承和基类指针指向派生类,虚函数 自动执行对象对应的成员函数。
下一次13.6
2016-08-30 周二
复习了一次之前写的。
2016-08-29 周一
类 是一个名称,相当于int这样的类型。没有办法对类进行赋值。没有办法对类的成员进行直接赋值。 只能 类定义出一个对象,然后对象的成员可以赋值。
定义和声明分开 与否可以引出内联函数
内联函数 inline 带有宏定义的性质。声明的时候只是声明。
好处就是 如果调用的频繁,就可以减少函数调用跳转,缺点是如果函数体过大就会代码膨胀。
等程序完成后,再对部分函数声明为内联inline函数。
inline函数往往是编译时确定的。虚函数时运行时确定的。
类的的成员应用:类名::成员;对象成员应用 : 对象名.成员
inline函数里尽量不要声明static变量:因为如果放到.h里的话,就会很多地方声明
inline函数不要想去获取它的地址,声明时它是不存在的,获取不了地址。
内联Inline函数有两种表现形式:
1、在类中 成员函数直接声明 直接定义 就是inline
2、函数前面加inline 标识Inline
头文件 .h 源文件 .cpp
定义一个成员函数为const函数(int get(int i) const),表示在这个函数里不能有修改别的成员变量值的行为。如果定义一个变量为const就表示这个变量不能被修改。
在编程的时候,对于你已经确定这个函数不要去修改变量的,就在声明成员函数时,应该多使用const,这样编译器就会提示错误,从而帮助你查错。
const 听起来就跟宏定义一样,有宏定义的特点,声明的时候不给分配存储空间,第一次调用的时候给分配。再次调用不在此分配空间。宏是调用多少次分配多上次空间。这个是针对编译还是针对运行还搞不清楚。
局部变量放在堆区,全局变量放在栈区。
说到const肯定想到static,考虑的就是申明、内存、调用、有效范围、值这几个方面
static有两种声明方式:
1、static声明在函数里面 就是函数里可以调用静态变量。 存储在全局变量的内存里。数值是上一次数值的基础上再使用,不会函数再次调用再次初始化。
2、static声明在源文件里。就是当前源文件可以调用的全局静态变量。存储在全局变量里,数值跟全局变量使用一样。
这个变量如果被别的源文件引用会报错。而且别的源文件还可以定义相同名字的变量而不产生冲突。
构造函数 可以在创建类的对象的时候对对象进行初始化。名称和类名一样
构造函数没有返回值,可以是内联函数,可以不是内联函数。
一个类可以有多个构造函数,这样可以 构造多个对象。
析构函数 销毁对象占用的内存空间。一个类只能有一个不带参数,没有返回值的析构函数。
感觉第7章可以不用看。
下回看第13章的虚函数吧。
2016-8-23
第5章
赋值运算符
数学运算符
表达式的优先级 可以使用括号。
关系运算符 == != < >等。
if语句:if if else if elseif if语句的嵌套 if()fi() 带括号的嵌套语句(else跟最近的if结合的。)大括号括起来,这样就else可以跟想要的if配对。
逻辑运算符 与 或 非 ; 优先级:不知道哪个优先级的话,就括号括起来。自己写程序,自己可以随意控制。
判断真假 if()
三目运算符,三元运算符 a?b:c 条件运算符。允许对不同类别的变量同时操作。float int三目运算会把他们精度跟最高精整合在一起。
复杂的IF嵌套。就是if 一层再套一层。
第6章
面向对象思想的程序 C是面向过程的语言。
面向对象程序语言的特征: 抽象 封装 继承 多态
私有成员不能被对象直接访问。只能通过共有成员函数接口来访问这个私有成员。 私有成员调用这么麻烦,为什么还要使用私有成员呢? 数据的赋值和读取分开操作。
很难理解为什么会有公有成员和私有成员一说:
1、如果你有私有成员。然后封装了公有的接口给别人,别人只能看到这个公有接口运行的结果,不知道里面发生了什么。 为了不让别人对我这部分东西进行修改。
2、比如我有一个私有变量,这样的话,对象是访问不了的,不能读写。我如果想别人只能读,不能写,就可以只写一个读的接口成员,不写写的接口成员,这样这个变量就修改不了了。
3、私有成员是继承不了的。但是类在应用的时候都是对象去用它,如果是用不了,不是所有人都是用不了了么 ?
QT里的私有成员 和C++里的私有成员好像不一样?
下回看6.10 内联函数
2016-08-19
第2章5节 名字空间解决重名问题。 namespace a,引用的时候就像std一样,a::。
当使用using namespace 释放变量,如果重名的话,MAIN函数里又没有同名的定义,就会报错。如果main里有同名的,就会输出main里的值。
第4章8节,为什么要用补码。计算机不能执行减法。
所以2-1 等效为 2+(-1)
-1 在计算机里 最高是符号位 1000 0001 这是计算机里的保存值。
负数和正数相加,负数会做两步转换,然后和正数相加,得到正确的数。
第一步:符号位之外的全部翻转 ;
第二步:将最后一位+1;
然后二进制相加。
第4章12 枚举类型 可以使用文字代表数字值,使程序更为简单易懂,可读性增强。还可以定义枚举变量。进行判断 赋值等。
下回看第5章
-
从新手到高手(零起点学通C++ )范磊著
2015-10-28 18:15:27PDF电子书共65M含25章全部内容,带文档结构图,看的很清楚,很适合初学者。 -
零起点学通c++视频。。。。
2012-07-20 22:24:39哪位大大有的,,,发个咧,,,谢谢,,,,,,,找到的都是在线观看的,,,都下载不了的,,,,,, -
《零起点学通C++》 系列笔记 -- 第15章 链表
2015-04-30 19:50:26说明:C用的是标准库函数,C++用的是操作符。一般多用new和delete; 一个小的例子: 建立一个小的图书管理表。 图书编号 num; 图书价格 price; p1 下一个结点的指针; p2 本结点的指针; head ...链表的简单介绍:
链表是为了解决数组的局限。
把数组看成一个大小确定的容器。则它的问题就是大小是确定的。而且必须在开辟内存空间之前,就确定好数组的大小。比如,num[10]. 这样就经常会出现,空间不足或者浪费,因为大小不可以改变。
所以,我们需要更灵活的–链表。它是把一个大的容器,分割成无数小的容器,每个容器里面放上合适的元素,然后连接起来。链表的特点:
1. 有一个头指针 head, 它是指向第一个链表元素的位置;
2. 然后,每一个链表都有一个next指针,它会指向下一个链表的位置;- 静态链表:
结点的数据在内存中的分布是在编译时就确定好了的,不会在运行时再进行动态地分配空间,例如不能在程序运行时,动态地对各个结点进行创建,添加或者删除的工作,这都是在运行前就已经确立好了的,我们只能在编译前修改指向结点的指针。
一个简单的链表结构 book:
struct book { int num; float price; struct book *next; };
下面看使用 结构体 和 类 分别来实现一个小的链表:
- 结构体 – struct
#include <iostream> using namespace std; const int NULL = 0; struct book { int num; //图书编号 float price; book *next; //指向下一个node }; int main() { book x,y,z, *head, *p; x.num = 10000; x.price = 14.5; y.num = 10001; y.price = 23.4; z.num = 10002; z.price = 25.0; head = &x; x.next = &y; y.next = &z; z.next = NULL; p = head; while(p != NULL) { cout << p->num <<endl<<p->price<<endl; p = p->next; } return 0; }
- 类的链表 class
#include <iostream> using namespace std; const int NULL = 0; class book { public: int num; //图书编号 float price; book *next; //指向下一个node }; int main() { book x,y,z, *head, *p; x.num = 10000; x.price = 14.5; y.num = 10001; y.price = 23.4; z.num = 10002; z.price = 25.0; head = &x; x.next = &y; y.next = &z; z.next = NULL; p = head; while(p != NULL) { cout << p->num <<endl<<p->price<<endl; p = p->next; } return 0; }
动态链表:
建立一个动态的链表,就是程序运行时,根据用户的输入,从无到有, 依次建立起一个表格。这个表格中的数据都依次 保存在各个结点上,每个结点都是用new操作符来动态开辟,结点与结点之间用指针next相关联。C语言中:
void *p = malloc(sizeof(struct book));
free(p);
C++语言中:book *p = new book;
delete p;
说明:C用的是标准库函数,C++用的是操作符。一般多用new和delete;一个小的例子:
建立一个小的图书管理表。- 图书编号 num;
- 图书价格 price;
- p1 下一个结点的指针;
- p2 本结点的指针;
- head 做头结点;
- next 指向下一个结点;
#include <iostream> #include <string> using namespace std; class book { public: int num; float price; book *next; }; book *head = NULL; book *creat() //定义一个返回book类指针的create函数。 { book *p1; book *p2; p1 = new book; //创建一个新的book类对象; head = p1; p2 = p1; cout <<"请输入图书的编号,以0结束"<<endl; cin>>p1->num; if(p1->num != 0) { cout <<"请输入图书的价格"<<endl; cin >> p1->price; } else { delete p1; p2 = NULL; head = NULL; return head; } while(p1->num != 0) { p2 = p1; p1 = new book; cout <<"请输入图书的编号,以0结束"<<endl; cin>>p1->num; if(p1->num != 0) { cout <<"请输入图书的价格"<<endl; cin >> p1-> price; } p2 -> next = p1; } delete p1; p2 ->next = NULL; return head; } int main() { create(); reutnr 0; }
《未完待续》……
- 静态链表: