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

Написать функцию swap - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему нельзя подставлять переменные в выражения #if #else? http://www.cyberforum.ru/cpp-beginners/thread1130277.html
Почему код работает, не должен же, потому что выражение стоящее после #if вычисляется на этапе компиляции, переменные подставлять нельзя?? #include <stdio.h> #include <iostream> using namespace std; int a = 9; int main(void){ #if a>99
C++ В массиве все четные элементы заменить максимальным В одномерном массиве все четные элементы заменить максимальным и отсортировать элементы массива по возрастанию. http://www.cyberforum.ru/cpp-beginners/thread1130253.html
C++ Поменять местами минимальный и максимальный элемент в каждом столбце матрицы
Дано матрицу размера 5 x 10. Превратить матрицу, поменяв местами минимальный и максимальный элемент в каждом столбце.
Найти средние арифметические значения элементов каждой строки матрицы C++
Задать матрицу произвольным способом. Найти средние арифметические значения элементов каждой строки.
C++ Найти количество элементов превышающих среднее арифметическое всех элементов массива http://www.cyberforum.ru/cpp-beginners/thread1130247.html
Дано одномерный массив из 15 целых чисел. Найти количество элементов превышающих среднее арифметическое всех элементов массива.
C++ Cколько раз встречаются числа с 4 одинаковыми цифрами Здравствуйте.Мне нужна помощь. Для всех шестизначных натуральных чисел посчитать сколько раз встречаются числа, в записи которых присутсвует 4 одинаковые цифры. Вот что получилось. #include <iostream> #include <math.h> using namespace std; void main (void) подробнее

Показать сообщение отдельно
MastAKK
145 / 136 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
26.03.2014, 15:06     Написать функцию swap
Лично я бы сделал так
C++
1
2
3
4
5
6
template <typename T>
void swap(T& par1, T& par2){
   par1 = par1^par2;
   par2 = par2^par1;
   par1 = par1^par2;
}

Но если шаблоны ещё не знаете (что наверняка), то можно сделать так:
C++
1
2
3
4
5
void swap(int& par1, int& par2){
   par1 = par1^par2;
   par2 = par2^par1;
   par1 = par1^par2;
}
P.S. терпеть не могу использование третьей переменной. Имхо, с xor - один из лучших вариантов
 
Текущее время: 09:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru