#include<iostream.h>
/*类模板*/
template<class T>
class Sum
{
T res;
public:
Sum(T i=0):res(i){}
T operator()(T x){
res+=x;
return res;
}
};
template<class FuncObject,class T>
T Func1(FuncObject fob,const T &val){
return fob(val);
}
template<class FuncObject,class T>
T Func2(FuncObject &fob,const T &val){
return fob(val);
}
int main()
{
Sum<int> sum1(10);
Sum<int> sum2(10);
int i=5, j=10;
cout<<sum1(j)<<'\t'<<sum1(i)<<endl;//输出结果为:25 15
cout<<sum2(j)<<'\t';//输出结果为:20
cout<<sum2(i)<<endl;//输出结果为:25
return 0;
}
输出结果:
cou<<函数1<<函数2;
先算函数2,再函数1。
- 大小: 13.3 KB
分享到:
相关推荐
j<i;j++) a=a/10; sum+=a; } cout<<"您输入的浮点型小数是:"<<sum<<endl; cout<<"请输入你要转换的进制(大于0,小于36!)"<<endl; cin>>base; if(base<0||base>36) { cout<<"输入错误!请重新输入!"...
cout<<"输入第"<<i<<"个学生的姓名"<<endl; cin>>p->name; cout<<"性别(M/F)"<<endl; cin>>p->sex; cout<<"学号"<<endl; cin>>p->number; cout<<"输入成绩:"<<endl; cout<<"语文:"<<endl; cin>>p->grade....
cout<<i<<endl; ++i; } ``` 4.6 过程应用:求π 过程应用:求π是一个实践项目,用于计算π的值。可以使用while语句或for语句来实现。 例如,使用while语句计算π的值: ```cpp double pi=0; int i=1; while (i...
cout<<"i="<<i<<'\t'<<"j="<<j<<endl; cout<<"x+y="<<x+y<<endl; } ``` 运行结果截图: 第二题:小写英文字母转换为大写英文字母 本题的目的是将小写英文字母转换为大写英文字母。有两种方法可以实现: 方法一...
C++ 斐波那契数列分数式 #include<iostream> using namespace std; int main() { float j,k,s; int a,i; char t;... j=2.0;... for(i=1;i<=2;i++) ... cout<<"sum is "<<s<<endl; cin>>a; return 0; }
std::cout << "The sum of" << v1 << "and" << v2 << "is" << v1 + v2 << std::endl; ``` 根据题目要求,修改后的代码如下: ```cpp std::cout << "The sum of" << std::endl; std::cout << v1 << std::endl; std:...
cout<<"(2*i)+(3*j)="<<(2*i)<<"+"<<(3*j)<<"="<<(2*i)+(3*j)<<endl; cout<<"(2*i)-(3*j)="<<(2*i)<<"-"<<(3*j)<<"="<<(2*i)-(3*j)<<endl; cout<<"(2*i)*(3*j)="<<(2*i)<<"*"<<(3*j)<<"="<<(2*i)*(3*j)<<endl; cout...
int color::ok(int k) ... cout<<setw(4)<<sum<<':'; for(int i=1;i<=n;i++) cout<<x[i]<<' '; cout<<endl; } else for(int i=1;i<=m;i++){ x[t]=i; if(ok(t)) backtrack(t+1); } }
std::cout << "The sum of" << v1 << "and" << v2 << "is" << v1 + v2 << std::endl; ``` **解答:** 为了满足题目的要求,我们将原代码进行了重写,使得每个操作数和最终的结果都在独立的输出语句中打印出来。 ```...
#include "utility.h" #include "simple_circ_lk_list.h" #include<iostream> int main() { SimpleCircLinkList ... cout<<"error‚"<<endl; while(k==0) { for (i=1;i<=sum;i++) { cin>>e;
if (n > 0) cout << "平均分是:" << (double)sum / n << endl; else cout << "没有学生信息!" << endl; } /*按分数统计学生数量*/ int student::countBygrade(student *p, int n, int low, int high) { int ...
cout << "Sum: " << sum << endl; return 0; } ``` #### `for` 循环 `for` 循环是一种更加紧凑的循环结构,常用于已知循环次数的情况。 **示例代码:** ```cpp #include<iostream> using namespace std; int ...
#include<iostream> using namespace std; int main() { int n=1, m, sum, i;... while (1) ... sum = 0;... for (i = 1; i < 8;... cout << "最后一层有" << m << endl; break; } n++; } }
cout << "1-10的和:" << sum << endl; } ``` - **for循环版本:** ```cpp #include<iostream> using namespace std; int main() { int i = 1, sum = 0; for (i = 1; i <= 10; i++) { sum += i; } cout...
cout << "P" << n << "(" << x << ")=" << sum << endl; return 0; } double fun(double n1, double x1) { if (n1 == 0) return 1; else if (n1 == 1) return x1; else return ((2 * n1 - 1) * x1 * fun(n1 - ...
cout << "Sum: " << sum.value << endl; return 0; } ``` 这里定义了一个名为`MyNumber`的类,并实现了加法运算符的重载。 **4. 静态存储类型** 静态变量在程序整个生命周期内都存在,即使函数调用结束也不会被...
cout <<i <<endl; i++; } } ``` 过程化语句是C语言中的一种基本控制结构,用于控制程序的执行流程。在本章中,我们学习了五种基本的过程化语句:while语句、do…while语句、for语句、switch语句和转向语句。这些...
cout<<"整数序列最大子段和是:"<<sum<<endl; } void main(){ int n,a[100],m,maxsum; cout<<"请输入整数序列的元素个数n"<<endl; cin>>n; cout<<"请输入各元素的值:"<<endl; for(m=0;m<=n;m++) cin>>a[m]...
cout << "sum=" << sum << "," << "aver" << aver << endl; return 0; } ``` **知识点:** 1. **循环结构**:使用 `for` 循环实现重复执行的逻辑。 2. **变量初始化**:在声明变量时可以同时赋初值。 3. **整数除...