fork(1) download
  1. #include <iostream>
  2. #include <array>
  3. using namespace std;
  4.  
  5. template <size_t Dim>
  6. class Mat
  7. {
  8.  
  9. template <size_t VDim, typename enable_if<(Dim > 1 && VDim == 0)>::type* = nullptr>
  10. void getVectorBegin(const array<size_t, Dim - 1>& indexAfter) const;
  11.  
  12. template <size_t VDim, typename enable_if<(Dim > 2 && 0 < VDim && VDim < Dim-1)>::type* = nullptr>
  13. void getVectorBegin(const array<size_t, VDim>& indexBefore, const array<size_t, Dim - VDim - 1>& indexAfter) const;
  14.  
  15. template <size_t VDim, typename enable_if<(Dim > 1 && VDim == Dim-1)>::type* = nullptr>
  16. void getVectorBegin(const array<size_t, Dim - 1>& indexBefore) const;
  17. };
  18.  
  19. int main() {
  20. Mat<3> m1;
  21. Mat<2> m2;
  22. return 0;
  23. }
Success #stdin #stdout 0s 4520KB
stdin
Standard input is empty
stdout
Standard output is empty