C++
sfaner
这个作者很懒,什么都没留下…
展开
-
C++ 的输入工作
C++ 输入的问题一、C++ 控制台输入和文件输入的关系二、iostream 定义的四个标志位三、cin、get()、getline()的区别一、C++ 控制台输入和文件输入的关系一个控制输入的内容可以看做事一个文件的信息控制台写入方式int i=0;int tmp[100]; cin >> tmp[i];while (i<100原创 2018-10-18 22:43:00 · 256 阅读 · 0 评论 -
对象和类
一、类和对象类用于指定对象的形式,它包含了数据表示法和用于处理数据的方法。类中的数据和方法称为类的成员。函数在一个类中被称为类的成员。二、类的定义声明class Stock{private: std:string company; long shares; double share_val; double total_val; void set_tot() { tota...原创 2018-12-03 16:33:27 · 210 阅读 · 0 评论 -
函数模板
函数模板1.函数模板的定义一个可以应用于不同类型的对象的函数叫做函数模板。函数模板可以让我们在不知道处理的数据是什么类型的情况下进行编程。2.创建函数模板template<typename,T>void function(T &a,T &b){........}第一行指出,要建立一个模板,并将类型命名为T。关键字template和typename都...原创 2018-11-06 20:50:16 · 228 阅读 · 0 评论 -
引用
当形参为引用时当形参为引用时,则函数按引用传递,则形参直接指向形参而不会创建临时变量。会提高效率。但是如果实参与引用参数不匹配,或者实参不是变量时,并且仅当形参为const引用。c++将生成临时变量。否则将会出现警告错误。double refcube(const double &ra){ return ra*ra*ra}long edge=5L;double c1=refc...原创 2018-10-30 20:24:28 · 118 阅读 · 0 评论 -
函数重载
函数重载的定义函数重载是一种特殊情况,C++允许在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表(参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不同的问题。函数重载的关键是函数的参数列表(也称函数特征标)void print(const char * str,int width); //func1void print(double d,int width)...原创 2018-10-31 21:49:43 · 229 阅读 · 0 评论 -
数组、vector和array的区别
模板类vector和array都是数组的替代品1.vector:vector&lt;typeName&gt; vt&lt;n_elem&gt;;其中参数可以是n_elem可以使hi整形常量,也是是整形变量。可以在运行阶段的时候设置vector的长度,使用new和delete来管理内存,对象存储在堆上。2.arrayarray&lt;typeName, n_elem&gt; arr;...原创 2018-10-24 11:33:09 · 2029 阅读 · 0 评论 -
按值传递、按指针传递、按引用传递的区别
在函数调用中,是怎么创建形参的?原创 2018-10-31 11:11:42 · 2730 阅读 · 0 评论 -
函数递归
递归函数常见写法return退出void recurs(argumentlist){ if(test) return; recurs(argumentlist); //调用自己的函数}else退出void recurs(argumentlist){ statement1; if(test) recurs(argumentlist); //调用自己的函数...原创 2018-10-26 15:24:19 · 277 阅读 · 0 评论 -
函数指针
下面是一些函数的原型,这些函数的特征标看似不同,但实际上相同。const double * f1(const double a[], int n);const double * f1(const double [], int n);const double * f1(const double *, int n);首先参数列表const double a[]与const double *a...原创 2018-10-25 19:24:20 · 225 阅读 · 0 评论 -
将字符串作为参数的函数
字符串是有一系列字符组成,以空值字符结尾。将字符串作为参数来传递,实际上传递的是字符串的第一个字符的地址。这以为这字符串函数原型应将其表示字符串的形参申明为char *类型。假设要将字符串作为参数传递给函数,则表示字符串的方式有三种:char 数组名;用引号的字符串常量(字符串字面值);被设置为字符串的地址的char指针;char ghost[15] ="galloping";...原创 2018-10-23 11:36:40 · 18174 阅读 · 0 评论 -
数组的使用的注意事项
一. 数组的初始化for循环初始化 可以先定义,后初始化 ;列表初始化 定义和初始化必须在一起;结构的初始化也是这样。int arr[5];arr[5]={1,2,3,4,5}; // errorint arr[5]={1,2,3,4,5}; //right二、数组和指针的关系 首先数组和指针是完全不一样的存在,只是访问形式存在相似。指针是在内存中有一个单元存...原创 2018-10-22 21:55:29 · 3036 阅读 · 0 评论 -
运算符重载
要重载运算符,需要使用被称为运算符函数的特殊函数形式。运算符函数的格式如下:operatorop(argument-list)其中op必须是有效的c++运算符,不能虚构一个新的符号。运算符函数的原型需要放在类的声明中,定义放在接口(类方法)的定义文件中。在使用文件中,一个参数是运算符函数原型所在类声明的类,第二个参数是运算符函数的参数,即:相应的类 op argument-list。重载的...原创 2018-12-11 16:01:49 · 157 阅读 · 0 评论