get_size( T (&arr)[SIZE] ) {
                  
                  
                      return SIZE;
                  
                  
                  }
                  
                  
                  
                  
                  
                  template <class T>
                  
                  
                  T get_average(T *arr) {
                  
                  
                      T v;
                  
                  
                  
                  
                  
                      for(int i = 0; i < get_size(arr); i++) {
                  
                  
                          cout << arr[i];
                  
                  
                      }
                  
                  
                  
                  
                  
                      return v;
                  
                  
                  }
                  
                  
                  
                  
                  
                  int main() {
                  
                  
                    double arr[3] {1,2,3};
                  
                  
                  
                  
                  
                    cout << get_average(arr);
                  
                  
                  
                  
                  
                    return 0;
                  
                  
                  }
                  
                  
                
я понмаю что в функцию можно только поинтер на array сделать, но как из функции с помощью поинтера вызвать get_size ?
А как ты внутри get_average вообще получаешь размер, если у тебя указатель? Как это вообще компилируется?
Обсуждают сегодня