C++中函数重载机制询问
2005-03-20 23:58
225 查看
刚开始学C++有两个月了,我以前C基础还可以,后来学习VB,以及网页编程。现在开始学习C++,想把C++作为自己新的突破点。
近日来对C++ 的函数重载机制很不理解。请求大家的帮助。
问题具体描述如下:
更一般地C++支持被称为函数重载function overloading 的机制函数重载允许两个
或更多个函数使用同一个名字限制条件是它们的参数表必须不同参数类型不同或参数
的数目不同根据不同的参数表编译器就能够判断出对某个特定的调用应该选择哪一个
版本的重载函数下面是一组合法的min()重载函数这些函数也可以是类成员函数
// 一组min()重载函数
// 每个函数都有一个特有的参数表
#include <string>;
int min( const int *pia, int size );
int min( int, int );
int min( const char *str );
char min( string );
string min( string, string );
重载函数在运行时刻的行为与非重载函数完全一样主要的负担是在编译时刻用来决定
中该调用哪个实例所需要的时间如果C++不提供函数重载支持那么我们就必须为程序中
每个函数都要提供一个独一无二的名字。
以前在C中函数的参数类型以及数目是我们事先确定的,为什么在C++中在编译的过程中可以根据参数
的类型与数目区分参数表?
在此先谢谢大家的帮助。迫切希望与C++程序员交流学习。
pytruth1002@163.com
QQ:16773707
近日来对C++ 的函数重载机制很不理解。请求大家的帮助。
问题具体描述如下:
更一般地C++支持被称为函数重载function overloading 的机制函数重载允许两个
或更多个函数使用同一个名字限制条件是它们的参数表必须不同参数类型不同或参数
的数目不同根据不同的参数表编译器就能够判断出对某个特定的调用应该选择哪一个
版本的重载函数下面是一组合法的min()重载函数这些函数也可以是类成员函数
// 一组min()重载函数
// 每个函数都有一个特有的参数表
#include <string>;
int min( const int *pia, int size );
int min( int, int );
int min( const char *str );
char min( string );
string min( string, string );
重载函数在运行时刻的行为与非重载函数完全一样主要的负担是在编译时刻用来决定
中该调用哪个实例所需要的时间如果C++不提供函数重载支持那么我们就必须为程序中
每个函数都要提供一个独一无二的名字。
以前在C中函数的参数类型以及数目是我们事先确定的,为什么在C++中在编译的过程中可以根据参数
的类型与数目区分参数表?
在此先谢谢大家的帮助。迫切希望与C++程序员交流学习。
pytruth1002@163.com
QQ:16773707
相关文章推荐
- paip.函数方法回调机制跟java php python c++的实现
- C++中虚函数功能的实现机制
- C++中函数指针遇上函数重载
- 第八章 C++函数的高级特性(8.2 成员函数的重载、覆盖与隐藏)
- C++的函数重载
- C/C++—— C++中函数重写和函数重载
- C++和Java在 子类继承父类时,两者成员函数重写和重载的特性
- C++普通函数与模板函数以及特化函数重载的优先级问题
- C++ 60分钟入门教程 - 7、C++成员函数和运算符的重载
- c++成员函数的重载、覆盖、隐藏区别
- 仅返回类型不同的函数,在C++中如何实现重载?
- C++中成员函数的重载、覆盖与隐藏
- C++的虚函数机制
- C++成员函数重载、覆盖和隐藏的区别
- [C++基础]重载、覆盖、多态与函数隐藏(3)
- C++成员函数的 重载、隐藏、覆盖分析
- C++的缺省参数与函数重载是正交特性吗?
- C++_函数的重载求两个数或三个数的最值
- C++ 函数模板(十四)--template 泛型函数模板、通用函数、重载模板
- C++函数名字的隐藏:重写、重载、重定义