引用:严格地说,C++中没有多维数组。
笔记:不只是C++啦,C中就是这样。不过,正因为C++中没有多维数组,而提供了“数组的数组”,所以C/C++在数组使用上更灵活。
多维数组的定义和使用没什么要多提的,用过就懂了。无非是多一对括号而已。不过,如果把它跟指针一起用,倒是要注意的:二维数组名对应的是“指向指针的指针”,所以,如果要在函数间传递多维数组,指针类型一定要正确:
inta[3][4];...
笔记:不只是C++啦,C中就是这样。不过,正因为C++中没有多维数组,而提供了“数组的数组”,所以C/C++在数组使用上更灵活。
多维数组的定义和使用没什么要多提的,用过就懂了。无非是多一对括号而已。不过,如果把它跟指针一起用,倒是要注意的:二维数组名对应的是“指向指针的指针”,所以,如果要在函数间传递多维数组,指针类型一定要正确:
inta[3][4];...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-11 00:46
我晕,本书才讲了个开头,居然讲到new和delete了。我“偷窥”了一下:下一章开始才讲到操作符,而且下章将有专门的一节讲new和delete。看来这里提到它们的目的只是为了说明string这样的类为什么可以自动适应大小。
new的返回值是一个指针,不过本书暂时没有提到new也会返回NULL的。是的,暂时还不用提内容不够这么复杂的情况。
引用:在自由存储区中创建的数组对象数组是没有名字的,程序员只能通过其地址间接地访问堆中的对象。...
new的返回值是一个指针,不过本书暂时没有提到new也会返回NULL的。是的,暂时还不用提内容不够这么复杂的情况。
引用:在自由存储区中创建的数组对象数组是没有名字的,程序员只能通过其地址间接地访问堆中的对象。...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-11 00:29
给这篇文章定下这个标题,是因为书中就是这样说的。本书是讲解C++的,所以它推荐读者尽量使用C++的内容,而实际上像我这样从C过来的人,还是习惯于使用C风格的字符串。——我又想起了那句话:“原来我只是一个‘古代’的C++程序员。”(见《数组》一文)
C语言是用字符数组来做字符串的(当然这个字符数组必需要有一个NULL结尾),因为字符串是如此常用,C语言还专门开发了一套库函数来处理这个特殊的数组。于是,我们进行...
C语言是用字符数组来做字符串的(当然这个字符数组必需要有一个NULL结尾),因为字符串是如此常用,C语言还专门开发了一套库函数来处理这个特殊的数组。于是,我们进行...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-07 02:00
指针和数组之间是什么关系呢?书中曰“密切相关”。其实,那简真就是同一回事嘛。用到指针的时候,你未必会用到数组;但是只要你用到数组,你就必要然用到指针(即使你不知道)。
正是因为指针可以用加或减运算来移动它所指的位置,而且每加一或减一正好移动到相邻一个同类型的变量(不管这个变量占内存是多少),那么我有意将一堆同类型的变量放在一起,拿一个指针指向它们中的第一个,再记住它们的个数,这就成了数组。
数组用一组方括号来解引用其中的某个成员,这也只是指...
正是因为指针可以用加或减运算来移动它所指的位置,而且每加一或减一正好移动到相邻一个同类型的变量(不管这个变量占内存是多少),那么我有意将一堆同类型的变量放在一起,拿一个指针指向它们中的第一个,再记住它们的个数,这就成了数组。
数组用一组方括号来解引用其中的某个成员,这也只是指...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-07 00:55
指针的初始化与赋值:指针是一个变量,它可以被赋值,也可以被求值。指针可以接受的值只有以下几种:
1、编译时可求值的0值常量。(必须是0,其实就是NULL啦)
2、类型匹配的对象的地址。(也就是用&运算符取一个变量的地址)
3、另一对象末的下一地址。(这种用法主要用在循环里,其实当指针取这个值时,对其所指的内存进行存取往往会导致灾难)
4、同类型的另一个有效指针(如“p=q;”)。
其中第1点...
1、编译时可求值的0值常量。(必须是0,其实就是NULL啦)
2、类型匹配的对象的地址。(也就是用&运算符取一个变量的地址)
3、另一对象末的下一地址。(这种用法主要用在循环里,其实当指针取这个值时,对其所指的内存进行存取往往会导致灾难)
4、同类型的另一个有效指针(如“p=q;”)。
其中第1点...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-04 03:19
指针是C/C++的精华,也是最难的部分。——所有学习C/C++的人都明白这点,当年我初学的时候也是这样。但是,现在再回想指针,我却很难回忆它究竟难在哪儿。应该说这就叫“难者不会,会者不难”吧。“饱汉不知饿汉饥”是有一定的道理的,即使饱汉曾经饿过。
本书中规中矩地讲解了指针的概念、定义与初始化、操作等。正如上面提到的“饱汉不知饿汉饥”,我似乎很健忘,以至于不记得指针的难点在哪儿了。...
本书中规中矩地讲解了指针的概念、定义与初始化、操作等。正如上面提到的“饱汉不知饿汉饥”,我似乎很健忘,以至于不记得指针的难点在哪儿了。...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
07-04 02:57
进入本书第四章,开始讲“数组”了。数组难不难?这不好说。但是数组非常重要这是肯定的,有许多基本的算法就是与数组一起出现的——比如冒泡排序法。而离开了那些算法,数组本身也失去了价值。
注意:阅读本章时要对“维数”概念加以小心,按平时的理解,“维数”是多维数组中的概念,但是本书中的“维数”指的是元素个数。为了避免干扰,我在阅读笔记中用“个数...
注意:阅读本章时要对“维数”概念加以小心,按平时的理解,“维数”是多维数组中的概念,但是本书中的“维数”指的是元素个数。为了避免干扰,我在阅读笔记中用“个数...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-28 23:59
第三章就这样结束了,本章介绍了三个标准库类型:string、vector和bitset。
可惜的是,整个第三章我都是草草读过的。一方面因为它们不属于严格意义上的C++内容,另一方面C时代的东西在不经意间抵触着它们。
确切地说,它们C时代的那些东西的替代品。它们存在的理由就是它们更优秀。然而优秀是一回事,动不动心又是一回事。
C语言在类与对象方面的缺失,使C程序员更多地掌握了底层的操作。面对C++标准库中的string和bitset这些东西,C程序员们...
可惜的是,整个第三章我都是草草读过的。一方面因为它们不属于严格意义上的C++内容,另一方面C时代的东西在不经意间抵触着它们。
确切地说,它们C时代的那些东西的替代品。它们存在的理由就是它们更优秀。然而优秀是一回事,动不动心又是一回事。
C语言在类与对象方面的缺失,使C程序员更多地掌握了底层的操作。面对C++标准库中的string和bitset这些东西,C程序员们...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-27 22:44
每当使用到布尔变量数组时,总是有点心疼。因为布尔变量只需要0和1两种值,然而编译器动辄使用一个字节——甚至四个字节来存放一个布尔变量。面对1/32的使用效率,叫人怎能不心疼?
要想节约空间也不是没有办法,代价是写更多的代码:用“&”操作将变量的某一个bit取出来,一个字节就可以存放8个布尔变量。但是,这个代价是比较重的,重到足以让程序员望而生畏的地步。
bitset应运而生,它可以方便地管理一系列的bit位而...
要想节约空间也不是没有办法,代价是写更多的代码:用“&”操作将变量的某一个bit取出来,一个字节就可以存放8个布尔变量。但是,这个代价是比较重的,重到足以让程序员望而生畏的地步。
bitset应运而生,它可以方便地管理一系列的bit位而...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-27 22:22
迭代器与数据库的相似之处在于end()函数返回值为“指向末元素的下一个”。跟数据记录集的eof这么相似。话说回来,熟练于C/C++的程序员一定不会忘了,利用下标访问数组时用的总是用“半开半闭区间”。就拿“inta[10];for(inti=0;i!=10;i++)”来说,下标为10就可以视为“最后一个元素的下一个”。只是以前不会有这么明显的思考。
迭代器与指针的相似之处在于它的...
迭代器与指针的相似之处在于它的...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-27 02:29
对于for语句,我几乎总是这样写的:“for(inti=0;i<Max;i++);”。但是,按本书的说法,我这样写似乎同时犯了两个错误。
1、本书中写for语句中的第二个表达式(条件表达式)时总是用!=,而不用<。这几天来虽然心里觉得奇怪,但是一直没去思考这里面的含义。本书没有急着告诉我“所以然”,只是提醒我读完本书的第二部分后就会明白。我等着吧:)
2、我总是觉得用Max这样一个变量去代替某个需要用函数...
1、本书中写for语句中的第二个表达式(条件表达式)时总是用!=,而不用<。这几天来虽然心里觉得奇怪,但是一直没去思考这里面的含义。本书没有急着告诉我“所以然”,只是提醒我读完本书的第二部分后就会明白。我等着吧:)
2、我总是觉得用Max这样一个变量去代替某个需要用函数...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-27 01:51
终于让“类模板”上场了,可惜的是,在本书的第三章,还不能彻底让类模板浮出水面,只能将就着提一下。
引用:使用类模板可以编写一个类定义或函数定义,而用于多个不同的数据类型。……vector并不是一种数据类型,而只是一个类模板,可用来定义任意多种数据类型。
笔记:“vector<int>ivec;”中,“vector<int>”是一个数据类型,C...
引用:使用类模板可以编写一个类定义或函数定义,而用于多个不同的数据类型。……vector并不是一种数据类型,而只是一个类模板,可用来定义任意多种数据类型。
笔记:“vector<int>ivec;”中,“vector<int>”是一个数据类型,C...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-27 01:40
习惯了VC++的CString类,而此前用的又是C语言,所以,压根没有看一眼string。现在既然书中专门讲它,我就看一看吧。
定义与初始化:
strings1;
strings2(s1);
strings3("value");
strings4(n,'c');//由n个c组成的一串
string对象的输入除了可以“cin>>s1;”以外,还可以将cin...
定义与初始化:
strings1;
strings2(s1);
strings3("value");
strings4(n,'c');//由n个c组成的一串
string对象的输入除了可以“cin>>s1;”以外,还可以将cin...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-26 20:41
虽然实际工作中绝少用到cin和cout,但是我还是记得要用它们必先“usingnamespacestd;”,至于为什么这样做,三个字:不知道。
本书从一开头就用到了cin和cout,但是它没有using,而是每一次用到它们都写成“std::cin”和“std::cout”,同时提醒说这两个字名是来自std命名空间的。于是,我似乎明白了“usingnamespacestd;”的作用。...
本书从一开头就用到了cin和cout,但是它没有using,而是每一次用到它们都写成“std::cin”和“std::cout”,同时提醒说这两个字名是来自std命名空间的。于是,我似乎明白了“usingnamespacestd;”的作用。...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-26 17:10
头文件的用处主要是代码重用——重用不仅仅是为了减少工作量,还可以保证每一次重用都是完全相同的内容。
正因为头文件可以多次重用,所以要防止有些只能出现一次的代码放进头文件中。比如变量的定义只能有一次,声明(含extern且不含初始化)却可以有多次。函数也是。
引用:一些const对象定义在头文件中。
笔记:看到这里,总算想通了前面的困惑:为什么const常量的作用域仅为一个文件。正如我前面的估计,const常量是不开劈内存空间的...
正因为头文件可以多次重用,所以要防止有些只能出现一次的代码放进头文件中。比如变量的定义只能有一次,声明(含extern且不含初始化)却可以有多次。函数也是。
引用:一些const对象定义在头文件中。
笔记:看到这里,总算想通了前面的困惑:为什么const常量的作用域仅为一个文件。正如我前面的估计,const常量是不开劈内存空间的...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-26 10:18
首次考虑class与struct的关系源自我对类对象占用内存数的观察。我发现VC++6的CString——这么强大的类——它占内存居然是4字节(sizeof(CString)为4)。那时我就认为,类对象仅仅在内存中存放成员变量(《C++Primer》称作“数据成员”)而不存放成员函数。后来,读林锐博士的《高质量C/C++编程指南》时,才看到了比较正规的说法:C++中class与struct没有本质的区别。—...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-26 01:12
枚举是我向来不太喜欢用的东西,几乎我见过的每本书都是这样介绍枚举的:
enumweekday{Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday};
我看到这里,总是想:多浪费啊,与其这样,还不如直接用0-6这些数呢。以后要写“weekdayToday=Sunday;”,哪有“intToday=0;”舒服。
本书似乎早看透了我的心理,于是,讲...
enumweekday{Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday};
我看到这里,总是想:多浪费啊,与其这样,还不如直接用0-6这些数呢。以后要写“weekdayToday=Sunday;”,哪有“intToday=0;”舒服。
本书似乎早看透了我的心理,于是,讲...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-25 02:41
长期以来,我一直在疑惑:typedef这个词要它干什么?因为没有它我照样可以完成所有任务。而有了它我反而觉得无法适应。比如“UINTi;”,为什么不写作“unsignedinti;”?本书用简短的三句话告诉我它存在的意义:
引用:typedef通常被用于以下三种目的:为了隐藏特定类型的实现,更强调使用类型的目的;简化复杂的类型定义,使其更易理解;允许一种类型用于多个目的,同时使得每次使用该类型的目的明确。
笔记:第三...
引用:typedef通常被用于以下三种目的:为了隐藏特定类型的实现,更强调使用类型的目的;简化复杂的类型定义,使其更易理解;允许一种类型用于多个目的,同时使得每次使用该类型的目的明确。
笔记:第三...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-25 02:12
引用是C++的特色,一般用在函数的参数中。按有些书本的说法,叫“普通变量的用法,指针变量的效果”。书中本节没有讲诉引用在函数参数中的用法,只提了“给变量起个别名”这一个用处(毕竟本书才开头)。说实在的,如果撇开函数参数,还真想不到引用有什么用处。
引用这个概念本身也不难理解(除了对C程序员来说有些不习惯以外),但是引用的符号却增加了理解它的难度,我经常在论坛上看到有初学者对“&”和“*...
引用这个概念本身也不难理解(除了对C程序员来说有些不习惯以外),但是引用的符号却增加了理解它的难度,我经常在论坛上看到有初学者对“&”和“*...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-25 02:03
如果将变量定义放在任何{}的外面,则该变量是全局的,这个规则不适用于const常量。
以前虽然心里隐隐约约有这个感觉,但是从未正面考虑过这个问题。之所以隐隐约约有此感觉,是因为我认为编译器并不为const常量开劈内存空间。
我曾经专门做过测试:程序如下:
constinti=5;
int*p;
p=(int*)&i;
cout<<*p<<"\t"<<i<...
以前虽然心里隐隐约约有这个感觉,但是从未正面考虑过这个问题。之所以隐隐约约有此感觉,是因为我认为编译器并不为const常量开劈内存空间。
我曾经专门做过测试:程序如下:
constinti=5;
int*p;
p=(int*)&i;
cout<<*p<<"\t"<<i<...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-24 02:18
作用域这个概念是程序员都耳熟能详的知识点。这部分知识我几乎可以跳过,不过我还是认真阅读了相关内容。阅读过程中还是有体会的:
有无数书本曾经提醒过我:少用(尽量不用)全局变量,多用局部变量。其实,即使是局部变量,也还有作用域大小的,局部变量的作用域也是越小越好。原因自然和少用全局变量一个道理。正如书中所言:“通常把一个对象定义放在它首次使用的地方是一个很好的办法。”
以往,我使用局部变量总是把它放在函数的开头,表示这些变量在本函数中起作用。唯...
有无数书本曾经提醒过我:少用(尽量不用)全局变量,多用局部变量。其实,即使是局部变量,也还有作用域大小的,局部变量的作用域也是越小越好。原因自然和少用全局变量一个道理。正如书中所言:“通常把一个对象定义放在它首次使用的地方是一个很好的办法。”
以往,我使用局部变量总是把它放在函数的开头,表示这些变量在本函数中起作用。唯...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-24 01:17
extern用来告诉程序:你不用为我的变量开劈内存空间,你只要知道这个变量别处已经声明过了。所以,我总是在程序包含多个CPP文件时才这样用:
1、在某一个CPP文件中直接定义变量,如inti=0;
2、其它CPP文件中声明变量,如externinti;
但是,书中介绍exturn还可以用来定义,如:externdoublepi=3.1416;特点是该extern语句包含变量的初始化。
我觉得C++标准这样做有些多余,而且增加了出错的可能...
1、在某一个CPP文件中直接定义变量,如inti=0;
2、其它CPP文件中声明变量,如externinti;
但是,书中介绍exturn还可以用来定义,如:externdoublepi=3.1416;特点是该extern语句包含变量的初始化。
我觉得C++标准这样做有些多余,而且增加了出错的可能...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-24 00:51
intival(1024);//直接初始化
intival=1024;//复制初始化
以前的我常用第二种用法,原因很简单:从来没见过第一种用法。直到后来学习了林锐博士的《高质量C/C++编程指南》。
那本书在讲类的构造时说道:CMyClassb=a;这种形式看起来像赋值,实际上调用的是拷贝构造函数。
那本书给我的感觉仅仅停留在类变量的初始化中,一直没有过渡到内置变量类型。直到后来,我在用VC++.NET的向导功能编程序时,才发现向导帮我...
intival=1024;//复制初始化
以前的我常用第二种用法,原因很简单:从来没见过第一种用法。直到后来学习了林锐博士的《高质量C/C++编程指南》。
那本书在讲类的构造时说道:CMyClassb=a;这种形式看起来像赋值,实际上调用的是拷贝构造函数。
那本书给我的感觉仅仅停留在类变量的初始化中,一直没有过渡到内置变量类型。直到后来,我在用VC++.NET的向导功能编程序时,才发现向导帮我...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-23 21:30
引用:对象是内存中具有类型的区域。
笔记:这句话说得很直白,也只有这样面向C++熟练工的书才可以这样说,毕竟初学者不知道内存与变量的关系,或者还没考虑到。 引用:C++还保留了一些词用作各操作符的替代名。这些替代名用于支持某些不支持标准C++操作符号集的字符集。它们也不能用作标识符(此处指变量名,偷猫标)。
一般的书只提到C++变量名不可以使用关键字,本书还额外提了这样一句,然后列出一个表,有and、bitand、compl、not_eq、or_eq、xor_e...
笔记:这句话说得很直白,也只有这样面向C++熟练工的书才可以这样说,毕竟初学者不知道内存与变量的关系,或者还没考虑到。 引用:C++还保留了一些词用作各操作符的替代名。这些替代名用于支持某些不支持标准C++操作符号集的字符集。它们也不能用作标识符(此处指变量名,偷猫标)。
一般的书只提到C++变量名不可以使用关键字,本书还额外提了这样一句,然后列出一个表,有and、bitand、compl、not_eq、or_eq、xor_e...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-23 20:49
《C++Primer》说了,字符常量或字符串常量前加L,表示wchat_t类型,于是我试了一下:
程序如下:
chara="a";
wchar_tb=L"a";
cout<<a<<endl;
cout<<b<<endl;
结果如下:
a
0012FEBC
晕,怎么出现这个结果?
让我再试。
程序如下:...
程序如下:
chara="a";
wchar_tb=L"a";
cout<<a<<endl;
cout<<b<<endl;
结果如下:
a
0012FEBC
晕,怎么出现这个结果?
让我再试。
程序如下:...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-23 15:29
引用:……大多数通用机器都是使用和long类型一样长的32位来表示int类型。整型运算时,用32位表示int类型和用64位表示long类型的机器会出现应该选择int类型还是long类型的难题。在这些机器上,用long类型进行计算所付出的运行时代价远远高于用int类型进行同样计算的代价。……决定使用哪种浮点型就容易多了:使用double类型基本上不会有错。在float类型中隐式的精度损失是不能忽视的,而double类型精度代价相对于flo...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-22 18:27
第一部分,第二章
引用:C++标准规定了每个算术类型的最小存储空间,但它并不阻止编译器使用更大的存储空间,事实上,对于int类型,几乎所有的编译器使用的存储空间都比所要求的大。
笔记:确实如此,VC++中int和long是一样大。VC++.NET增加了对_int64的支持。
引用:字符类型有两种:char和wchar_t,wchar_t类型用于扩展字符集,比如汉字和日语。
笔记:我怎么不知道wchar_t?我自己用包含汉字的字符串时用的也是...
引用:C++标准规定了每个算术类型的最小存储空间,但它并不阻止编译器使用更大的存储空间,事实上,对于int类型,几乎所有的编译器使用的存储空间都比所要求的大。
笔记:确实如此,VC++中int和long是一样大。VC++.NET增加了对_int64的支持。
引用:字符类型有两种:char和wchar_t,wchar_t类型用于扩展字符集,比如汉字和日语。
笔记:我怎么不知道wchar_t?我自己用包含汉字的字符串时用的也是...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-22 17:23
第一章:快速入门
本章的存在使本书变得不像一本“规范书”,似乎成了“入门书”,这可能是后来版本新加入的内容。以至于这一章节被排除在任何一个“部分”之外。
本章“无厘头”地简要介绍了cin、cout、注释、while、for、if等概念。这么多东西,每一个都介绍点皮毛,然后组合成一个综合实例。
我称其为“无厘头”有以下原因:如果本书面对不...
本章的存在使本书变得不像一本“规范书”,似乎成了“入门书”,这可能是后来版本新加入的内容。以至于这一章节被排除在任何一个“部分”之外。
本章“无厘头”地简要介绍了cin、cout、注释、while、for、if等概念。这么多东西,每一个都介绍点皮毛,然后组合成一个综合实例。
我称其为“无厘头”有以下原因:如果本书面对不...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-22 16:29
在读本书之前,我已经有过一段编写C++程序的历史,如果连C语言也算在内,可以追溯到十年前。用BASIC语言编程序的历史则有十四年(1992-2006)。
长期编程序中所使用的参考书无非有两种:介绍算法的书和介绍语法的书。我所买的参考书往往是同时介绍两者的。而对语法的介绍,则只是基于某一个编译器。
于是,这十年来,我所学习的“C/C++”,从本质上说只是TurboC和VisualC++,对C/C++本身的理解也是被编译器过滤的内容。不是我不想...
长期编程序中所使用的参考书无非有两种:介绍算法的书和介绍语法的书。我所买的参考书往往是同时介绍两者的。而对语法的介绍,则只是基于某一个编译器。
于是,这十年来,我所学习的“C/C++”,从本质上说只是TurboC和VisualC++,对C/C++本身的理解也是被编译器过滤的内容。不是我不想...
[ 查看全文 ]
关键词:C++,MFC,VC,Primer,编程,教程,读书
读书笔记 - C++ Primer
06-22 15:33
动网7.1与7.0相比,在验证码上作了大改动。7.0使用的是一个现成的MBP图库,内含0-9十个数字的图形信息(每个图形都是10*10像数)。因为这十个数字毫无变化,破解的起来还是比较容易的。
到了7.1,至少在以下方面有了变化:一是用失量库代替点阵库,这样可以产生任意尺寸的验证码图片;二是字符串长度不仅局限于4个字节,可以使用任意长度,三是增加了变形和噪点处理,即使同一个字符重复出现,也可以产生不同的图片,四是字符集不仅仅局限在十个数字,而可以扩展到其它字符,甚至连汉字也不在...
到了7.1,至少在以下方面有了变化:一是用失量库代替点阵库,这样可以产生任意尺寸的验证码图片;二是字符串长度不仅局限于4个字节,可以使用任意长度,三是增加了变形和噪点处理,即使同一个字符重复出现,也可以产生不同的图片,四是字符集不仅仅局限在十个数字,而可以扩展到其它字符,甚至连汉字也不在...
[ 查看全文 ]
