ВУЗ:
Составители:
Рубрика:
137
x [ i ] = i; c [ i ] = ’A’ + i;}
for ( i = 0; i < 5; i++ ) cout << “ “ << x [ i ] << “ “ << c [ i ];
cout << “/n“;
}
Результат:
0 A 1 B 2 C 3 D 4 E
В списке параметров шаблона могут присутствовать формальные
переменные, не определяющие тип. Точнее, это параметры, для которых
тип фиксирован:
template < class T, int size = 64 >
class row {
T * data;
int length;
public: row ( ) { length = size; data = new T [ size]; }
~row ( ) { delete T[] data; }
T & operator [ ] ( int i ) { return data [i]; }
};
void main ( ){
row < float, 7 > rf;
row < int, 7 > ri;
for ( int i = 0; i < 7; i++ ){ rf[i] = i ; ri[i] = i * i; }
for ( i = 0; i < 8; i++ )
cout << “ “ << rf[i] << “ “ << ri[i];
cout << “\n“;
}
Результат:
0 0 1 1 2 4 3 9 4 16 5 25 6 36
В качестве фактического аргумента для параметра size взята кон-
станта. В общем случае может быть использовано константное выра-
жение, однако использовать выражения, содержащие переменные, нель-
зя.
Страницы
- « первая
- ‹ предыдущая
- …
- 133
- 134
- 135
- 136
- 137
- …
- следующая ›
- последняя »