重载:说得简单一点就是一个函数通过传递不同的参数实现不同的功能。
例子:c++ 中 =操作符的重载:
#include
#include
class CMyString
{
private:
char* m_str;
public:
CMyString(char *str)
{
int size;
size = strlen(str) + 1;
m_str= new char[size];
strcpy(m_str,str);
}
CMyString()
{
m_str = NULL;
}
~CMyString()
{
delete []m_str;
}
void ShowString()
{
cout << m_str << endl;
}
CMyString & operator=(CMyString& mystring)//运算符重载函数
{
int size;
size = strlen(mystring.m_str) + 1;
m_str = new char[size];
strcpy(m_str,mystring.m_str);
return *this;
}
};
void main()
{
CMyString strValue("Hello Wolrd");
strValue.ShowString();
CMyString strvalue2("abcdefg");
strValue = strvalue2;
strValue.ShowString();
}
#include
using namespace std;
void f(int i){
cout<}
void f(char c){
cout<
int main(){
f(3);//调用的是第一个。
f('a');//调用的是第二个。
return 0;
}
这样以完全一样的调用参数个数和名称就是一种重载,再多的你就要看书上,很多内容。
就是,同一个函数,传递不同的参数,完成不同的功能.