今天被问到一个C++的函数重载问题,一下子没反应过来,这种基础的问题竟然忘记了,以下记录一下这些忘记的内容。 函数重载
函数重载的定义是:在相同的作用域中,如果函数具有相同名字而仅仅是形参表不同,此时成为函数重载。注意函数重载不能基于不同的返回值类型进行重载。
注意函数重载中的“...
分类:
编程语言 时间:
2014-05-23 22:51:47
阅读次数:
378
模板与泛型编程--实例化[续]二、函数模板的显式实参 在某些情况下,不可能推断模板实参的类型。当函数的返回类型必须与形参表中所用的所有类型都不同时,最常出现这一问题。在这种情况下,有必要覆盖模板实参推断机制,并显式指定为模板形参所用的类型或值。1、指定显式模板实参 如果函数形参类型不统一,该如何指定sum的返回类型?template
??? sum(T, U);
此时使用任一形参调用都一定...
分类:
编程语言 时间:
2014-05-22 13:05:59
阅读次数:
322
模板与泛型编程--模板定义[续]四、模板类型形参 类型形参由关键字class或 typename后接说明符构成。在模板形参表中,这两个关键字具有相同的含义,都指出后面所接的名字表示一个类型。 模板类型形参可作为类型说明符在模板中的任何地方,与内置类型说明符或类类型说明符的使用方式完全相同。具体而言,它可以用于指定返回类型或函数形参类型,以及在函数体中用于变量声明或强制类型转换。 template ...
分类:
编程语言 时间:
2014-05-22 06:37:23
阅读次数:
407
模板与泛型编程--类模板成员[续1]二、非类型形参的模板实参template
class Screen
{
public:
Screen():screen(hi * wid,'#'),
cursor(hi * wid),height(hi),width(wid) {}
//..
private:
std::string screen;
std:...
分类:
编程语言 时间:
2014-05-21 14:00:04
阅读次数:
332
编程题:数组名作为函数参数。要求分析:形参和实参都是数组名,传递整个数组,形参数组与实参数组必须等同,是存放在同一空间的同一个数组。形参数组修改时,实参数组也同时被修改,否则无法运行。#include<stdio.h>voidchange(intx[2]){intt;printf("x[0]=%d,x[1]=%d\n..
分类:
其他好文 时间:
2014-05-20 18:52:03
阅读次数:
270
编程题:指针变量,实参与形参的引用。已知一个一维数组,求其中前n个数的和。n由键盘输入。#include<stdio.h>intsum(int*q,intn){inti,s=0;for(i=0;i<n;i++,q++)s+=*q;returns;}voidmain(){intnum,a[10]={1,2,3,4,5,6,7,8,9,10};int*p=a;scanf("%d",&num);printf..
分类:
其他好文 时间:
2014-05-20 18:39:59
阅读次数:
240
说明MapReduce是一种分布式计算模型,解决海量数据的计算问题,主要有Map和Reduce组成用户使用时需要实现map()和reduce()两个函数,两个函数的形参都是key/value键值对若以eclipse为开发环境,运行时出现内存不足的情况,需要修改虚拟机的参数
(例如把Default V...
分类:
其他好文 时间:
2014-05-19 11:56:18
阅读次数:
352
前言 OpenCV
提供了许多封装好了的类型,而其中,以三大类型最为核心。本文将大致介绍这三大类型。CvArr:不确定数组
它可以被视为一个抽象基类,后面的两大类型都继承此类型并扩展。只要某个函数的形参是这个类型,那么我们就可以把后面两种类型作为实参传递进去做处理。CvMat:多通道矩阵
它用...
分类:
其他好文 时间:
2014-05-18 19:02:49
阅读次数:
221
成员函数不能定义 this 形参,而是由编译器隐含地定义。成员函数的函数体可以显式使用
this 指针,但不是必须这么做。如果对类成员的引用没有限定,编译器会将这种引用处理成通过 this 指针的引用。尽管在成员函数内部显式引用 this
通常是不必要的,但有一种情况下必须这样做:当我们需要将一个对...
分类:
编程语言 时间:
2014-05-16 19:02:06
阅读次数:
279
面向对象编程--纯虚函数、容器与继承I.纯虚函数 在函数形参后面写上 =0 以指定纯虚函数:class Disc_item : public Item_base
{
public:
double net_price(size_t) const = 0; //指定纯虚函数
};
将函数定义为纯虚函数能够说明,该函数为后代类型提供了可以覆盖的接口,但是这个类的版本绝不会调用。重要的是,用户将不...
分类:
编程语言 时间:
2014-05-15 05:50:43
阅读次数:
316