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

Создание и инициализация - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Составить блок-схемы (алгоритм)! http://www.cyberforum.ru/cpp-beginners/thread202439.html
Помогите, пожалуйста, составить блок-схемы (алгоритм) на следующие задачи: 1. Дана целочисленная квадратная матрица порядка 8. Найти наименьшее из значений элементов столбца, который обладает наибольшей суммой модулей элементов. Если таких столбцов несколько, то взять первый из них. 2. Дано натуральное число n. Выяснить, имеются ли среди чисел n, n+1, ..., 2n близнецы, т.е. простые...
C++ Из 2 заданых бинарных файлов вывести в 3 разность соответствующих чисел Имеются два бинарных файла содержащих числа. Создать третий файл каждый элемент, которого равен разнице между соответствующими элементами заданных файлов. http://www.cyberforum.ru/cpp-beginners/thread202434.html
C++ Дано n точек на плоскости
Указать (n-1)-звенную несамопересекающуюся незамкнутую ломанную проходящую через все эти точки. Число действий порядка n*log(n).
C++ pow
ребята, а можно как нибудь сделать чтобы pow(a,b) возвращал не double , а int?
C++ Перемножение массивов http://www.cyberforum.ru/cpp-beginners/thread202412.html
подскажите ,пожалуйста, как можно умножить первый элемент первого массива на первый элемент второго массива, второй элемент первого на второй второго то есть : a*b a*b a*b a*b
C++ вычисление действующего значения тока есть 2 массива: tok, vremia. надо чтобы каждый интервал времени (от 0 до 0.02с): 1) вычислялось апериодическая составляющая A0 для тока по след формуле: 1/N*∑(tok) Где N - количество значений tok на данном интервале. 2) вычислялось действующее значение токаю. Для этого надо посчитать сумму всех токов на данном интервале, причем по такой формуле: ∑-A0)*(tok-A0)]. И далее рассчитывается... подробнее

Показать сообщение отдельно
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
03.12.2010, 01:11     Создание и инициализация
Добрый вечер, я как всегда с нетривиальными вопросами
допустим есть объект
C++
1
2
3
4
5
6
class myclass
{
    int i;
public:
    myclass(int j) {i = j}
};
при создании создании объекта таким образом вопросов не возникает
C++
1
myclass object(5)
но как я узнал с книг есть еще две альтернативы такому объявлению:

1.
C++
1
myclass object = myclass(5)
тут происходит создание временного объекта который инициализируется значением "5"(правая часть) и тут же создается объект object который сразу же инициализируется этим объектом с помощью автоматического конструктора копирования(побитовая копия), я правильно понимаю?

2.
C++
1
myclass object = 5
Вопрос - создается неявная ф-ция преобразования "5" в тип myclass, что здесь происходит? справа получается объект типа myclass с значением поля "5", а потом происходит тоже побитовое копирование?

3. и насчет динамического создания объектов:
C++
1
myclass *object = new myclass(5)
тут я так понял создается тот же временный объект
C++
1
myclass(5)
, а оператор new размещает его в памяти и возвращает на него указатель, я правильно понял? если нет прошу поправить

Спасибо за внимание
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru