发布于2024-12-26 阅读(0)
扫一扫,手机访问
假设我们在程序中定义了两个函数:String test(String str1) 而后 int test1(int i),他们的内容都是很简单的功能
String test(String str1){
Response.Write("函数重载测试,这个是String函数");
Return "123232";
}
int test(int i){
Response.Write("函数重载测试,这个是int函数");
Return
1;
}
当我们调用 test("豆腐") 和 test(888),编译器非但不会报错,而且会执行出不同的结果,这样。
函数重载给我们在编程的过程中带来了很大的方便,我们可以由编译器来决定根据我们参数的变化相应的执行不同的代码。而且 这个也是
面向对象编程的一个主要的特色之一。相信MS的确想让ASP.Net成为Web未来编程的规范。
初始化你随便改,注意把全局变量也改下,数组长度你可以自行改。字符串大小不知道是不是就是最长的那个,我是这么做的,如果是比较ASCII码大小,换个函数就好了,思路是相似的。
#include
#include "string.h"
#define n 3
class Vector
{
public:
Vector(){}
int max(int z[])
{
int maxNumber=z[0];
for(int i=0;i<=n;i++)
{
if (maxNumber } return maxNumber; } double max(double z[]) { double maxNumber=z[0]; for(int i=0;i<=n;i++) { if (maxNumber } return maxNumber; } long max(long z[]) { long maxNumber=z[0]; for(int i=0;i<=n;i++) { if (maxNumber } return maxNumber; } float max(float z[]) { float maxNumber=z[0]; for(int i=0;i<=n;i++) { if (maxNumber } return maxNumber; } char* max(char z[3][10]) { char maxNumber[10]; strcpy(maxNumber,z[0]); for(int i=0;i { if(strlen(maxNumber) } return maxNumber; } }; void main() { Vector vt; int a1[3]={1,3,2}; double a2[3]={2.5,7.8,9.3}; long a3[3]={1000,5677,3456}; float a4[3]={1.5f,5.7f,3.8f}; char a5[3][10]={"I","love","china"}; char maxVector[10]={0}; cout< cout< cout< cout< int i=0; strcpy(maxVector,vt.max(a5)); while(maxVector[i]!='\0') { cout< } cout< } /* 你的代码中 T_counter& operator =(T_counter x) { this->data=x.data; return *this; } T_counter& operator +(T_counter x) { this->data+=x.data; return *this; }; 如果运行 c=a+b;则c是a+b的值,a也是a+b的值了! */ //把代码改成下面这样试试 #include using namespace std; template class T_counter { public: T_counter(t a=0) { data=a; } T_counter& operator =(T_counter x) { this->data=x.data; return *this; } T_counter operator +(T_counter x) { T_counter y; y.data=this->data+x.data; return y; } T_counter operator -(T_counter x) { T_counter y; y.data=this->data-x.data; return y; } T_counter operator *(T_counter x) { T_counter y; y.data=this->data*x.data; return y; } friend ostream & operator{ wocareturn woca; } friend istream & operator >>(istream &input,T_counter & x) { cin>>x.data; return input; } t getdata() { return this->data; } private: t data; }; int main() { T_counter a(5.9),b(6.6),c(0); coutc=a+b; coutc=(a-b); coutc=a*b; coutcoutcin>>c; coutsystem("pause"); return 0; }c的关于类模板中重载函数的问题
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店