Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Flashik66
17 / 9 / 7
Регистрация: 05.11.2012
Сообщений: 119
#1

Есть некоторые строчки кода, которые я не понимаю - C++

15.11.2012, 00:44. Просмотров 317. Ответов 3
Метки нет (Все метки)

Добрый день. У меня есть код программ но есть некоторые строчки кода которые я не понимаю. Помогите разобраться.

Как бы что тут делается?
template<typename T> void swap(T& n1, T& n2)
{ T _tn = n1; n1 = n2; n2 = _tn; }
И вот тут то что выделено..

for (int q = 0; q < N; q++)
{
int min = q;
for (int s = q+1; s < N; s++)
if (A[s] < A[min]) min = s;

swap<double>(A[q],A[min]);
}
Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 00:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Есть некоторые строчки кода, которые я не понимаю (C++):

Не понятны некоторые строчки в проге( - C++
Вот есть код: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; class A {private: //закритий...

Задача по наследованию. Не понимаю некоторые моменты в формулировке задания - C++
Здравствуйте! Вот есть задание: Описать базовый класс СТРОКА Обязательные поля класса: # Указатель на char - хранит адрес...

Объясните, для чего нужны некоторые строчки в коде(using namespace, new, int main) - C++
#include &lt;iostream&gt; using namespace std; //для чего эта строчка int main(void) // что нужно изменить чтобы было void main() { ...

Прокомментируйте оставшиеся строчки, не понимаю как работает "Решето Эратосфена" - C++
#include &lt;iostream&gt; //подключение стандартной библиотеки ввода-вывода using namespace std; //пространство имён. Чтобы писать &quot;cout &lt;&lt;...

Расшифруйте 3 строчки кода - C++
const int SIZE = 100; char *ch = new char; char *x= {0}; Объясните, что здесь происходит, для чего {0} Так же как сделать...

Прокомментировать 2 строчки кода - C++
Вот весь код Ovchinnikov13.cpp Открыть с помощью #include &lt;stdio.h&gt; //#include &lt;conio.h&gt; int main() {

3
Croessmah
Ушел
Эксперт CЭксперт С++
13554 / 7705 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
15.11.2012, 00:47 #2
Цитата Сообщение от Flashik66 Посмотреть сообщение
Как бы что тут делается?
n1 становится равным n2, а n2 становится равным n1.
А вообще почитайте про шаблоны.

Цитата Сообщение от Flashik66 Посмотреть сообщение
И вот тут то что выделено..
дорога ведет к изучению шаблонов.
0
Kuzia domovenok
1957 / 1810 / 142
Регистрация: 25.03.2012
Сообщений: 6,280
Записей в блоге: 1
15.11.2012, 00:51 #3
Ты скорее ещё не знаешь шаблоны и stl. Не удивительно, в большинстве курсов С++ их оставляют напоследок или даже не упоминают бывает.
Это шаблон функции обмена двух переменных. Объявление template<typename T>, значит, что это шаблон, в который вместо Т можно подставить любое имя типа. Вызывая swap<double>(A[q],A[min]); ты просишь компилятор создать функцию, согласно шаблону подставив вместо Т double,
И получается, что этот код аналогичен.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void swap(double& n1, double& n2)
{ 
  double _tn = n1;
  n1 = n2;
  n2 = _tn; 
}
///...
for (int q = 0; q < N; q++)
{
  int min = q;
  for (int s = q+1; s < N; s++)
    if (A[s] < A[min]) min = s;
  swap(A[q],A[min]);
}
1
Flashik66
17 / 9 / 7
Регистрация: 05.11.2012
Сообщений: 119
15.11.2012, 22:50  [ТС] #4
Спасибо большое!
0
15.11.2012, 22:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2012, 22:50
Привет! Вот еще темы с ответами:

Объясните две строчки кода - C++
что значит вот это: имею вввиду каждые функциии: не могу найти if ( n.peek() == ifstream::traits_type::eof() ) ofstream n(...

Перегрузка, адресация, объясните строчки кода - C++
Помогите разобраться что значат, делают приведенные строки кода: 1.В первой строке объявляется объект класса uravnenie, 3-я строка тоже...

Описать строчки кода, что они делают! - C++
Код программы: #include &lt;iostream&gt; #include &lt;time.h&gt; using namespace std; int main() { setlocale(LC_ALL,...

Перевести 2 строчки кода с printf на cout пожалуйста! - C++
Помогите перевести с printf на cout. printf(&quot;x=%0.5lf\n&quot;,i+1,X); printf(&quot;При количестве итераций=%d\n&quot;,count);


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru