valarray класында келесідей əдістер анықталған:
size_t size() const; // Жиымның өлшемі
T sum() const; // Элементтердің қосындысы
T min() const; // Ең кіші мəн
T max() const; // Ең үлкен мəн
// i элементке логикалық ығысу (егер i>0,онда солға):
valarray shift(int i) const;
// i элементке циклдік ығысу (егер i>0,онда солға):
valarray cshift(int) const;
// Жиымның əрбір элементіне func функциясын қолдану:
valarray apply(T func(T)) const;
valarray apply(T func(const T&)) const;
// қайталап инициалдау (барлық элементтер келісім
// бойынша мəнге алмастырылады, вектор өлшемі - sz:
void resize(size t sz, T c = T());
shift
жəне
cshift
ығыстыру функциялары жəне
apply
функциясын
қолдану жаңа жиымды қайтарады, мұндайда бастапқы жиым өзгеріссіз қалады.
Логикалық ығыстыру кезінде босаған мəндер берілген элементтер типі үшін
келісім бойынша тағайындалған мəнмен толтырылады.
resize
көмегімен қайта инициалдау бұрыннан бар жиымның өлшемін
динамикалық түрде өзгертуге арналмаған.
valarray
сандармен жылдам
жұмыс жасау үшін қолданылады деп саналады жəне оның өлшемі қолданылу
барысында тұрақты болып қалады деп есептеледі.
Жиымдарға
abs
,
acos
,
asin
,
atan
,
atan2
,
cos
,
cosh
,
exp
,
log
,
log10
,
pow
,
sin
,
sinh
,
sqrt
,
tan
,
tanh
функцияларын қолдануға болады, мысалы:
v2 = cos(v3); // i = 1, ..., 100 үшін v2[i] = cos(v3[i])
valarray
жиымының элементтері тізбек болып табылатындықтан, оған
алдыңғы бөлімдерде қарастырылған барлық стандартты алгоритмдер мен ите-
раторларды қолдануға болады. Алайда жиыммен қималар жəне ішкі жиындар
арқылы жұмыс істеген əлдеқайда тиімді болып табылады, олар келесі бөлімде
қарастырылады.
Достарыңызбен бөлісу: |