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

Как работает динамическое выделение памяти под объект? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Возврат объекта класса из функции http://www.cyberforum.ru/cpp-beginners/thread808745.html
Имеется следующий код: #include "stdafx.h" #include <iostream> using namespace std; /*Задача: Определить класс список элементов. В определение класса включить два конструктора для определения списка по его размеру и путем копирования другого списка. Определить операции над списком:
C++ Описать класс Матрица Описать класс Матрица. C++ http://www.cyberforum.ru/cpp-beginners/thread808735.html
C++ Производные
Привет всем! У меня такая проблема: надо написать программку, которая бы выдала вид прозводной, например, на вход подается f=y*x-2*y^2, необходимо производную по у написать, на выходе должно получиться: df/dy = -4*y с чего начать???? какие методы, алгоритмы можете посоветовать? Помогите!
C++ Непонятки со списком
Нашёл код в интернете и немного не понимаю его в некоторых местах. Объясните мне пожалуйста, зачем в коде вот тут: strcpy(spis->data,"0"); // инициализируем его данными spis->next = NULL; // следующий элемент - NULL start = spis; // запоминаем начало 1) зачем ставить spis->next = NULL; ? Ведь он потом всё равно ставится так spis->next = new Node; Как бы не...
C++ поиск обратной матрицы http://www.cyberforum.ru/cpp-beginners/thread808728.html
дана матрица A(почти матрица гильберта-отличается только 1-ая строчка): 1 1 1 1... 1/2 1/3 1/4 1/5... 1/3 1/4 1/5 1/6... ............................. нужно найти обратную к данной матрице, используя LU- разложение матрицы(разложение на нижнетреугольную и верхнетреуг.) т.е. в кратце как-то так: для поиска обратной матрицы нужно решить уравнение А*Х=Е(единичная...
C++ Найти количесво четных элементов матрицы Нужно найти количество четных элементов матрицы в каждой строчке. Написала код, по идее ответ должен быть таким сумма=1,сумма=2,сумма=3. а вылезает сумма=1,сумма=1,сумма=1 помогите, пожалуйста, найти ошибку. #include <stdio.h> подробнее

Показать сообщение отдельно
mzarb
-211 / 7 / 1
Регистрация: 14.01.2013
Сообщений: 141
15.03.2013, 02:32  [ТС]     Как работает динамическое выделение памяти под объект?
Vourhey, спасибо. Я почему-то думал, что new возвращает rvalue, так как нет возможности обратится к этой памяти или применить операцию взятия адреса, по крайней мере до присваивания указателю, по этому откинул версию "объект.функция()".
А new возвращает адрес выделенной памяти или все же указатель(без имени или с именем) на эту память?
И что будет делать конструктор, он инициализирует память нулями ?
И есть ли у этого объекта(адреса) такой же доступ к полям класса как и у обычных объектов, то есть можно ли будет в конструкторе писать адрес.поле и присваивать им аргументы если есть? То есть A или A() - это определения объекта без имени(но с адресом) типа A , а в примере "new (placementMemory + i) A(rand()" - это определение объекта без имени(с адресом , который вернет new) типа A и инициализация его значением "rand()" ? Если да, то почему адрес туда подставляется после типа?
И последний вопрос, static_cast преобразует к нужному типу, разбивая выделенный кусок на размер полей и располагая их последовательно в этом участке памяти?
Буду очень благодарен за ответ.
 
Текущее время: 18:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru