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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить методы-итераторы в неабстрактных классах http://www.cyberforum.ru/cpp-beginners/thread698119.html
Всем добрый вечер! У меня загвоздка вот с таким заданием: Определить методы-итераторы в неабстрактных классах: запросы - названия всех городов заданной области, суммарное количество жителей всех городов в области. У меня код рабочий. Только не могу никак разобраться с методом-итератором. Он был приведен в методичке и я его переписал под свое условие как понял. Прошу закомментить этот...
C++ Переделать программу с do while Помогите пожалуйста переделать эту программу с do while #include <iostream.h> Using namespace std; Int main (void) { Int n,i=1; Float b,y=0; Cout <<”введите b”; Cin >>b; http://www.cyberforum.ru/cpp-beginners/thread698112.html
C++ Считывание клавиши в непрерывном цикле
Есть программа, по идее должна постоянно вырисовывать на экране массив символов и при нажатии на клавишу позиция одного элемента (@) меняется. Получилось сделать "пошаговую", т.е. цикл каждый раз ждет, что я нажму клавишу, а меня интересует, можно ли цикл повторять бесконечно, и ЕСЛИ была нажата клавиша, то уже сдвигать @. Ниже прикладываю соответственно код. // Game1.cpp: определяет точку...
C++ Вычислить радиус круга, вписанного в равнобедренный треугольник
Господа программисты подскажите пожалуйста где ошибка? создать программу для вычисления радиуса круга вписанного в равнобедренный треугольник #include <stdio.h> #include <math.h> #include <conio.h> int main() { float tr; float r;
C++ По номеру месяца выдать название следующего за ним месяца http://www.cyberforum.ru/cpp-beginners/thread698090.html
Написать программу, которая по номеру месяца выдает название следующего за ним месяца (при m=1 получаем февраль, 4-май и т.д)
C++ Ввести список, в котором указаны фамилии, инициалы, адрес и номера телефонов абонентов Никак не могу понять, в чем ошибка. Все работает идеально до функции strcmp() Текст задачи: "Ввести список, в котором указаны фамилии, инициалы, адрес и номера телефонов абонентов. Вывести по указанию пользователя или фамилию абонента по заданному адресу и телефону, или сообщение о абонентах, имеющих заданные фамилию и инициалы." подробнее

Показать сообщение отдельно
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
15.11.2012, 00:51     Есть некоторые строчки кода, которые я не понимаю
Ты скорее ещё не знаешь шаблоны и 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]);
}
 
Текущее время: 10:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru