Форум программистов, компьютерный форум CyberForum.ru

Ошибка при создании шаблонной функции:"error C2075: temp: для инициализации массива требуются фигурные скобки" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Решение СНАУ методом Ньютона http://www.cyberforum.ru/cpp-beginners/thread1235934.html
Нужно написать программу для решения систем нелинейных алгебраических уравнений методом Ньютона. Наибольшая сложность заключается в том что на время запуска программы не ясно сколько будет этих уравнений и сколько будет неизвестных. Сам метод Ньютона я понимаю, а вот как это всё реализовать слабо представляю, так как с программированием знаком поскольку-постольку, а программа нужна для научной...
C++ Проверка double на NaN и Infinity Как лучше проверить дабл на нотенамбер или бесконечность? http://www.cyberforum.ru/cpp-beginners/thread1235912.html
C++ Динамическое создание переменных
Есть строка введённая с клавиатуры пользователем, к примеру такая: "a+b+c", как создать динамические переменные, допустим типа int a, b, c?
C++ Описание заголовочного файла synchapi.h
сабж Нужно на русском. Есть такие ресурсы? Всё облазил...
C++ Освобождение памяти в деструкторе класса http://www.cyberforum.ru/cpp-beginners/thread1235882.html
Перечитал по этому поводу много информации. Главный вопрос. Есть класс в котором происходит динамическое выделение памяти. В конструкторе я эту память хочу удалить. Пробовал много методов вроде создания отдельной функции внутри класса, которая освобождает память и встраивания ее в деструктор. Постоянно вылетает ошибка. Вопрос при удалении объекта класса динамически выделенная память сама по...
C++ Работа с командной строкой. Отрытие вызываемых файлов Добрый вечер форумчане. Составлена программа с аргументами командной строки. Hello, word C:\WINDOWS\system32\notepad.exe D:\comp11.txt D:\forma.exe И в свойствах проекта вот этот командный аргумент "C:\WINDOWS\system32\notepad.exe D:\comp11.txt", при запуске программы, ничего не запускает. Проверяя C:\WINDOWS\system32\notepad.exe D:\comp11.txt на командной строке - она работает. А... подробнее

Показать сообщение отдельно
Voivoid
 Аватар для Voivoid
585 / 261 / 12
Регистрация: 31.03.2013
Сообщений: 1,314
30.07.2014, 15:43     Ошибка при создании шаблонной функции:"error C2075: temp: для инициализации массива требуются фигурные скобки"
Цитата Сообщение от Stason676 Посмотреть сообщение
Возможно ли написать шаблон для сортировки всего. Спасибо.
Возможно ( ну, т.е. конечно не всего, а только того, что обладает семантикой массивов, т.е. имеет operator[] ). Надо лишь сделать небольшие изменения:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
#include <string>
 
template <typename T> int GnomeSort( T&, int );
 
int main( int argc, char* argv[] ) {
  std::string s = "23451";
  int count = GnomeSort( s, 5 );
 
  int a[ 5 ] = { 2, 3, 4, 5, 1 };
  int count2 = GnomeSort( a, 5 );
 
  return 0;
}
 
template <typename T> 
int GnomeSort( T& p, int length ) {
  int i = 0;
  int count = 0;
 
  while( i < length ) {
    if( i == 0 || p[ i ] >= p[ i - 1 ] ) ++i;
    else {
      auto temp = p[ i ];
      p[ i ] = p[ i - 1 ];
      p[ i - 1 ] = temp;
      --i;
    }
 
    count++;
  }
 
  return count;
}
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Но string это не массив же!
Ну это как посмотреть, для данного алгоритма вполне себе массив
 
Текущее время: 04:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru