the_king
مدیرکل انجمن
کلاس carray یک آرایه 10 عنصری را توسط گرانبار کردن عملگر [] ارائه می کند، بطوری که بتواند با انواع
مختلف داده کار کند، تابع calculate توان سوم یک عدد مثبت از هر نوع داده عددی را محاسبه می نماید :
مختلف داده کار کند، تابع calculate توان سوم یک عدد مثبت از هر نوع داده عددی را محاسبه می نماید :
کد:
#include "iostream.h"
#include "assert.h"
template <class T> class carray
{
private:
T array[10];
public:
T &operator [](int index)
{
assert((index>=0)&&(10>index));
return array[index];
}
const T &operator [](int index) const
{
assert((index>=0)&&(10>index));
return array[index];
}
};
template <class T> T calculate(T value)
{
T result;
result=value*value*value;
if (result<0)
result*=-1;
return result;
}
int main()
{
int i;
carray<int> cal;
int v1=2;
for (i=0;i<10;i++)
{
cal[i]=calculate(v1);
v1=v1+1;
}
carray<float> ca2;
float v2=2.5;
for (i=0;i<10;i++)
{
ca2[i]=calculate(v2);
v2=v2+1;
}
return 0;
}