void setBytePix(int value); void setAxisSize(const std::vector<int> &axis );
std::vector srcVector; srcVector.push_back(1024); srcVector.push_back(1024); setAxisSize(srcVector);
setAxisSize(QVector<int>()<<1024<<1024);
void setAxeSize(int number, int size); void setNumberDimension(int value); void setAxisDimensionP(int dimensionNumber, int axisSize){ setAxeSize(dimensionNumber, axisSize); } template<typename ...Arguments> void setAxisDimensionP(int dimensionNumber, int axisSize, Arguments... args){ setAxeSize(dimensionNumber, axisSize); ++dimensionNumber; setAxisDimensionP(dimensionNumber, args...); } template<typename ...Arguments> void setAxisSize(Arguments... args) { <s> setNumberDimension(sizeof...(args)/sizeof(int));</s> ( @AxisPod ) setNumberDimension(sizeof...(args)); setAxisDimensionP(0, args...); }
setAxisSize(1024, 1024);
template <typename T> void setBytePix(){ setBytePix(sizeof(T)*8);}
template<typename T, typename ...Arguments> void setAxisSize(Arguments... args) { setBytePix<T>(); setNumberDimension(sizeof...(args)); setAxisDimensionP(0, args...); }
setAxisSize<short>(1392,1032);
Source: https://habr.com/ru/post/216901/
All Articles