我的任务是编写一个可以处理int,字符串和结构类型的类。我写了类,它适用于int和字符串类型,但是我不知道如何使用相同的代码从结构中输入和打印对象。
模板类:
template <class T>
class templateWindow
{
int size;
T *mas;
public:
templateWindow(int s)
{
size = s;
mas = new T[size];
}
templateWindow(templateWindow&ob){}
void fillArray()
{
cout << "input values of array:\n";
for (int i = 0; i<size; i++)
cin >> mas[i];
}
void printArray()
{
cout << "\narray:\n";
for (int i = 0; i<size; i++)
cout << mas[i] << " ";
cout<<endl;
}
friend istream& operator>>(istream &s, T ob)//перегрузка для >>
{
s >> ob;
return s;
}
friend ostream& operator<<(ostream &s, T ob)//перегрузка для <<
{
s << ob;
return s;
}
};
我怎么称呼:
templateWindow <int> templ(size);
templ.fillArray();
templ.printArray();
templ.~templateWindow();
我的结构:
struct MyStruct
{
int a;
char c[10];
};
MyStruct structObj;