Em chào mọi người ạ. Em đang vướng ở phần nạp chồng tính tổng của 2 mảng kiểu int và double, em có viết như dưới đây ạ. Mọi người cho em xin ý kiến với ạ.
#include <iostream>
using namespace std;
template <class T>
class Array {
private:
T *array;
int size;
public:
Array(int n) {
size = n;
array = new T[size];
}
friend istream& operator>>(istream &in, Array <T>&a)
{
for(int i=0;i<a.size;i++)
{
cout<<"a["<<i<<"] = "; in>>a.array[i];
}
return in;
}
friend ostream& operator<<(ostream &out, Array <T>a)
{
for(int i=0;i<a.size;i++)
{
out<<a.array[i]<<" ";
}
return out;
}
Array<T> operator+(const Array <T> &a)
{
Array <T> kq;
for (int i=0;i<a.size;i++)
{
kq.array[i] = this->array[i] + a.array[i];
}
return kq;
}
};
int main() {
int n;
cout<<"Nhap so phan tu mang: "; cin>>n;
Array<int> intArray = Array<int>(n);
Array<double> doubleArray = Array<double>(n);
cout<<"Nhap mang double:"<<endl;
cin>>doubleArray;
cout<<doubleArray;
cout<<"\nNhap mang int:"<<endl;
cin>>intArray;
cout<<intArray;
cout<<"\nTong 2 mang la: "<<endl;
cout<<doubleArray + intArray;
return 0;
}