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

Динамическая память и конструктор класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Освобождение памяти http://www.cyberforum.ru/cpp-beginners/thread1158457.html
Маленький вопросик, как правильно освобождать память выделенную под vector<...>, деструктором ~vector() или методом clear() ?
C++ Map stl c++ ссылка на неразрешенный внешний символ Уважаемые форумчане, столкнулся с проблемой вставки объекта класса как параметр в контейнер map. Привожу ниже код как пытался сделать. Компилятор использую visual studio 2012. При построении проекта выдает следующие ошибки : 1>Исходный код.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: virtual __thiscall Staff::~Staff(void)" (??1Staff@@UAE@XZ) в функции "public:... http://www.cyberforum.ru/cpp-beginners/thread1158454.html
OpenGL Подключение OpenGL GLUT к Visual Studio 2013
начал изучать OpenGL, скачал библиотеки, но библиотека GLUT не работает, пробовал разные способы из интернета, но ничего не помогает, помогите, очень нужно использую Visual Studio 2013 заранее спасибо
Карточная игра C++
Решил попробовать сделать игру "дурак" в консоли windows. То есть сперва без имитации "интеллекта" машиной, хотя бы чтобы можно было ходить за обоих игроков и выяснять кто победил. Я не видел листинги таких игр, да и мне, как начинающему трудно читать листинги, думаю этот навык придет с практикой. После нескольких подходов-заходов, пришел к выводу, что организовать программу надо примерно так....
C++ Как работает функция вывода элементов списка? http://www.cyberforum.ru/cpp-beginners/thread1158438.html
Ребят, объясните в кратце, как работает функция вывода элементов списка(любая), например такая. и если кто знает, дайте ссылочку(литературу) на расшириное описание списков(стеков и очереди)void print_all(stack* o) { if (o->next!=NULL) { printf("%i ", o->x); print_all(o->next); } else printf("\n");
C++ Реализовать алгоритм, вычисляющий N членов ряда Фибоначчи с i-ого по k-й включительно Реализовать алгоритм, вычисляющий N членов ряда Фибоначчи с i-ого по k-й включительно. Вычисления прекращаются досрочно , если сумма вычисленных элементов превысит заранее заданное значение. СИ Вопрос: 1)Правильно ли понял задачу, то есть проверить. 2)Не понял с первыми 2 членами Ряд Фибоначчи 1, 1, 2, 3, 5, 8, и так далее.. как 1 и 1 ? тоесть первую 1 я пишу вручную ... правильно ли это... подробнее

Показать сообщение отдельно
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,898
Записей в блоге: 2
Завершенные тесты: 1
27.04.2014, 00:02     Динамическая память и конструктор класса
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
class A{
public:
  A() {
    std::cout << "call A()" << std::endl ;
  }
  A(int x) {
    std::cout << "call A(" << x << ")" << std::endl ;
  }
  ~A() {
    std::cout << "call ~A" << std::endl ;
  }
} ;
 
 
A * allocateA ( size_t size ) {
  A * buffer = static_cast<A*> ( operator new (sizeof(A) * size) ) ;
  for ( size_t i = 0 ; i < size ; ++i ) {
    new (buffer+i) A ( i ) ;
  }
  return buffer ;
}
 
void deallocateA ( A * buffer , size_t size ) {
  for ( size_t i = 0 ; i < size ; ++i ) {
    buffer[i].~A() ;
  }
  operator delete ( buffer ) ;
}
 
int main( int argc, char ** argv )
{
  size_t size = 5 ;
  A * a = allocateA ( size ) ;
  deallocateA ( a , size ) ;
}
 
Текущее время: 23:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru