C++学习笔记
文章平均质量分 67
longmenyu
这个作者很懒,什么都没留下…
展开
-
函数参数传递之引用形参和非引用形参的比较
预备知识:1.每次调用函数时,都会重新创建该函数所有的形参,此时所传递的实参将会初始化对应的形参;2.形参的初始化与变量的初始化一样:如果形参具有非引用类型,则复制实参的值;如果形参为引用类型,则它是实参的别名。3.非引用形参表示对应形参的局部副本,对这类形参的修改仅仅改变了局部副本的值。一旦函数执行结束,这些局部变量的值也就没有了。通过下面的程序(交换两个实参的值)来学习上面所提到的知识点。程序清单1(非引用类型——复制实参):#include using namespace std;void s原创 2010-12-12 23:22:00 · 736 阅读 · 0 评论 -
计算输入的字符中元音的总数
<br />程序清单:<br />#include <iostream>using namespace std;int main(int argc,char *argv[]){ int aCnt = 0; int eCnt = 0; int iCnt = 0; int oCnt = 0; int uCnt = 0; int totalCnt = 0; //元音总数 int otherCnt = 0; //其他字符的总数原创 2010-12-13 00:30:00 · 597 阅读 · 0 评论 -
C++ string类型的相关操作
<br /> <br />预备知识:<br />1. 头文件:<cctype><br /> <br /> isalnum()<br /> checks for an alphanumeric character; it is equivalent to (isal‐<br /> pha(c) || isdigit(c)).<br /> <br /> isalpha()<br /> checks fo原创 2010-12-13 00:38:00 · 521 阅读 · 0 评论 -
vector初步
<br />预备知识:<br /> <br />* name:vector的简单操作<br />* v.empty() //如果v为空,则返回true,否则返回false<br />* v.size() //返回v中元素的个数<br />* v.push_back() //在v的末尾增加一个值为t的元素<br /> <br /> <br />程序清单:<br />#include <iostream>#include <vector>#include <string>using原创 2010-12-13 00:40:00 · 498 阅读 · 0 评论 -
使用预处理进行程序调试
<br />预备知识:<br />1.程序所包含的调试代码仅在开发过程中执行,当应用程序已经完成,并且准备提交时,就会将调试代码关闭。可使用NDEBUG预处理变量实现有条件的调试代码;<br />2.gcc/g++编译器提供定义NDEBUG的命令行选项:<br /> $ g++ -NDEBUG ./debug_test.cpp<br /> 类似这样的命令行等效于在debug_test.cpp文件的开头提供了#define NDEBUG预处理命令。<br />3.预处理器定义了四种在调试时非常有用的原创 2010-12-12 22:26:00 · 778 阅读 · 0 评论 -
模拟迭代器实现数组元素的遍历
<br />程序清单:<br /> <br />#include <iostream>using namespace std;int main(int argc,char *argv[]){ const size_t arr_size = 5; int int_arr[arr_size] = {0,1,2,3,4}; /*模拟迭代器实现数组元素的遍历。实际上,与数组联合使用的指针本身就是迭代器*/ /*注:只要定义的多个变量具有相同的类型,就可以在for循原创 2010-12-13 00:27:00 · 707 阅读 · 0 评论 -
数组的基本操作
<br />预备知识:<br /> <br />在用下标访问元素时,vector使用的是vector::size_type类型,而数组下标的<br />正确类型是size_t<br /> <br /> <br />程序清单:<br />#include <iostream>using namespace std;int main(int argc,char *argv[]){ const size_t array_size = 10; int array1[array_siz原创 2010-12-13 00:29:00 · 481 阅读 · 0 评论 -
用iterator遍历vector中的元素
<br /> <br />预备知识:<br />几种初始化vector对象的方式:<br />vector<T> v1; //vector保存类型为T的对象。默认构造函数v1为空<br />vector<T> v2(v1); //v2是v1的一个副本<br />vector<T> v3(n,i); //v3包含n个值为i的元素<br />vector<T> v4(n); //v4含有值初始化的元素的n个副本 程序清单:#include <iostream>#include <string>原创 2010-12-13 00:33:00 · 5571 阅读 · 0 评论 -
指针的指向
<br />程序清单:<br /> <br />#include <iostream>#include <string>using namespace std;int main(int argc,char *argv[]){ string s1("I'm string 1"); string s2("I'm string 2"); string *p1 = &s1; string *p2 = &s2; cout<<"The value of原创 2010-12-13 00:36:00 · 590 阅读 · 0 评论