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

Управление динамической памятью при работе с классами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Первый отрицательный и последний положительный элемент читаемый из файла http://www.cyberforum.ru/cpp-beginners/thread1213564.html
Из файла (имя файла вводится с клавиатуры) считывается массив целых чисел. Размер массива заранее неизвестен. Выведите в файл количество четных чисел, расположенных в массиве между первым и положительным последним отрицательным числами в массиве.Подскажите что не так. #include<iostream> #include<vector> #include<fstream> #include<string> using namespace std; bool prov(double num)
C++ Счетчик в Binsearch Поиск в отсортированной строке длины n буквы (char k) Помогите поставить счетчик, который будет показывать, сколько раз встречается эта буква в слове int BinSearch(string M, int n, char k) { int L = 0; int R = n; int m; int z = 0; if (M==k){m=1;} else{ http://www.cyberforum.ru/cpp-beginners/thread1213557.html
Как работает конструктор копирования? C++
ECM::ECM(const ECM &E) //êîíñòðóêòîð êîïèðîâàíèÿ { if (E.type) {type= new char ; strcpy(type, E.type);} else type=0; type=E.type;Ghz=E.Ghz;Memory=E.Memory;Gb=E.Gb; } Объясните как работает это механизм (конструктор копирования) и как его правильно вызвать?
Найти 10 первых натуральных чисел, оканчивающихся на цифру 7 кратных числу 9, не меньших 100 (Pascal -> C++) C++
Найти 10 первых натуральных чисел, оканчивающихся на цифру 7 кратных числу 9 и находящихся в интервале левая граница которого равна 100 var i, v : integer; begin v:=99; for i := 1 to 10 do begin while true do begin Inc(v); if ((v - 7) mod 10 = 0) And (v mod 9 = 0) then begin writeln(v); break;
C++ Повторный ввод данных после ошибки http://www.cyberforum.ru/cpp-beginners/thread1213538.html
как после слов "ошибка!!!..." вернуться для повторного ввода оценки ученику?#include <iostream> #include <fstream> #include <string> using namespace std; int k, i, r; char u; string line; int main() { setlocale (0,"rus");
C++ Количество трёхзначных чисел, все цифры которых разные Есть задача Составить прорамму , которая считает количество натуральных чисел ,в которых все 3 цифры разные. Вот , что я написал int col = 0; for (int i = 100 ; i < 1000; i++) if (((i/100) != ((i%100)/10)) && ((i/100) != (i%10) && (i%10)!= ((i%100)/10))) col++; cout << col; Но меня смущает конечный результат. Каков должен быть ответ ? И если можно другие варианты решения задачи . подробнее

Показать сообщение отдельно
uglyPinokkio
325 / 228 / 41
Регистрация: 30.05.2014
Сообщений: 682
21.06.2014, 21:41     Управление динамической памятью при работе с классами
Цитата Сообщение от Divergence Посмотреть сообщение
А можно по-подробнее???
Если класс содержит указатели, то практически обязательно он должен иметь конструктор копирования. В противном случае, к примеру при передаче параметром в функцию по значению, будет использоваться конструктор копирования по умолчанию, который скопирует указатель во временный объект. После чего два объекта будут содержать указатели на одну область памяти со всеми вытекающими.
 
Текущее время: 16:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru