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

Почему не вызывается конструктор копирования? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поменять соседние слова местами http://www.cyberforum.ru/cpp-beginners/thread186801.html
задание: Дано предложение. Вывести его на экран, меняя местами каждые два соседних слова. Никак не могу сообразить что нужно делать, что использовать. уде не 1-й день мучаюсь над этой задачей. подскажите хотя бы алгоритм решения :(
C++ Программа со структурами. Не могли бы Вы помочь мне с написанием этой программы. Описать структуру с именем NOTE, содержащую следующие поля: NAME - фамилия, имя; TEL - номер телефона; BDAY - день рождения (массив из трех чисел). Написать программу, отдельными функциями выполняет следующие действия: • ввод с клавиатуры данных в массив BLOCKNOTE, состоящий из N переменных типа NOTE; • упорядочение записей по... http://www.cyberforum.ru/cpp-beginners/thread186790.html
C++ возврат по ссылкам
На защиту лаб.работы препод требует рассказать о возврате по ссылкам. Зачем они? Как они описываются, какой у них плюс?
упорядочен ли массив по неубыванию, по невозрастанию или не упорядочен вообще C++
Блин вест мозг себе уже вынес, никак не могу решить задачу(((. Помогите кто чем может. Задача:Написать подпрограмму,которая проверяла бы, упорядочен ли массив по неубыванию (Xi<=Xi+1),по невозрастанию (Xi=>Xi+1) или не упорядочен вообще. привести пример использования подпрограммы.
C++ Интегрирование по методу Симпсона http://www.cyberforum.ru/cpp-beginners/thread186785.html
написать программу которая посчитала бы интеграл сos(x+x^3)dx по методу симпсона с точностью до одной тысячной.буду оч.благодарен)))
C++ getline по 2 раза Привет. Почему в MSVC, если написать один раз getline(std::cin, path); то ввод не происходит? приходится писать 2 раза case 9: { std::string path(""); std::cout << "Введите имя файла: "; getline(std::cin, path); getline(std::cin, path); loadUFromFile(currGeneration, ROW,COL, path); break; подробнее

Показать сообщение отдельно
grizlik78
Эксперт С++
1903 / 1435 / 109
Регистрация: 29.05.2011
Сообщений: 2,989
27.06.2011, 00:51     Почему не вызывается конструктор копирования?
Цитата Сообщение от kravam Посмотреть сообщение
Угу? Ну ты согласишься, что если эта функция вызовется, то
всё-таки obj создастся?
Здесь я соглашусь. Объект создастся.
Цитата Сообщение от kravam Посмотреть сообщение
И не будет скопирован (как я хочу посимвольно),
И здесь так. Не будет скопирован.
Цитата Сообщение от kravam Посмотреть сообщение
и будет уничтожен
и будет вызван его деструктор?
Уничтожен-то будет, вопрос когда. Вот по коду приведённому в цитируемом посте совершенно очевидно, что уничтожен этот единственный объект будет по завершении функции main, так как имя этому объекту x, а вовсе не obj. Именно потому, что не вызывался конструктор копирования. Не стоит считать создателей компилятора недотёпами.
Цитата Сообщение от kravam Посмотреть сообщение
Вот, запусти и увидишь, что указатели указывают на один и тот же участок памяти. Уже удалённый, а нового нет, ибо МОЙ конструктор вызван не был.
Никто его пока не удалял. Его потом удалят.
Придумать ситуацию, когда RVO принесёт вред наверное можно, но очень не просто.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru