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

explicit и последствия. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти минимальные элементы столбцов матрицы http://www.cyberforum.ru/cpp-beginners/thread412299.html
пыталась решить задачу, написала такой вот код #include <iostream> #include <iomanip> #include <stdlib.h> #include <cstdio> #include <conio.h> #include <cmath>
C++ календарь помогите с задачей Нужно оформить через операторы циклов, Ввести на экран дату в формате ДД.ММ.ГГГГ, вывести на экран дату дня через неделю http://www.cyberforum.ru/cpp-beginners/thread412290.html
Как обратиться к элементу матрицы через одномерный массив? C++
Сабж. Возможно ли вообще обратиться например к 2 элементу, 2 строки через одномерный массив? типа matr?
Удалить из строки одинаковые слова. C++
Собственно, вот и само задание. Для заданного предложения необходимо найти и удалить одинаковые слова. Нужно на С. Поискал по форуму, но не нашел ничего подходящего. Буду благодарен за помощь
C++ Комментарии по коду http://www.cyberforum.ru/cpp-beginners/thread412279.html
С помощью шаблона добавления элемента в приведенном примере можно добавить только 1 элемент?? Зачем надо ~TElem(){Inf.ClearMem() (знаю, что нужен, но всеже)?? И с итераторами этими.. Это просто тот же цикл, просто в контейнере?? ///template <typename Inform> struct TElem{ /// Inform Inf; /// TElem *Prev, *Next; /// /// ~TElem(){Inf.ClearMem();} ///};
C++ Поменять местами столбцы в квадратной матрице по правилу: первый с последним, второй с предпоследним и т.д. #include <iostream> #include <conio.h> #include <stdlib.h> #include <time.h> #include <iomanip> #include <stdio.h> #include <malloc.h> using namespace std; подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
20.12.2011, 09:46     explicit и последствия.
Цитата Сообщение от LosAngeles Посмотреть сообщение
нет, hugeInt a = 100; равносильно hugeInt a(100); а не hugeInt a(hugeInt(100)), копирования не происходит
Это здесь. Но
C++
1
2
3
hugeInt a;
a=100; //Вот здесь будет a= hugeInt(100);
// То есть вызывается сначала конструктор безымянного временного объекта, потом копирующее присваивания, а потом ещё и деструктор безымянного временного объекта. Вот чтоб гарантировать вызов вместо всего этого оператора присваивания с преобраованием (hugeInt operatro = (int x); - это присваивание именно с преобразованием) используется эксплисит. А при наличии оператора приведения в исходном типе к целевому отработает он, а потом копирующее присваивание, в обоих случаях не будет вызван ни конструктор, ни деструктор
 
Текущее время: 07:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru