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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
helloy
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 46
#1

Создайте класс со специальной версией оператора new, получающей второй аргумент типа string - C++

24.12.2013, 11:30. Просмотров 249. Ответов 1
Метки нет (Все метки)

Создайте класс со специальной версией оператора new, получающей второй аргумент типа string. Этот класс должен содержать переменную static vector<string>, в которой сохраняется аргумент. Специальная версия new должна выделять память обычным образом. В main() вызовите new со строковыми аргументами, содержащими описания вызовов (попробуйте воспользоваться препроцессорными макросами _FILE_ и _LINE_).

есть соображения?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2013, 11:30     Создайте класс со специальной версией оператора new, получающей второй аргумент типа string
Посмотрите здесь:

Перегрузка оператора == для string C++
Класс как аргумент функции C++
C++ Класс как аргумент своего же метода
Создайте класс, имитирующий работу биллинговой системы сотового оператора (Не могу разобраться с ошибкой) C++
C++ Аргумент типа "HDC" несовместим с параметром типа const PAINTSTRUCT
C++ Описать класс многочлен, с полями степень, аргумент и коэффициенты
C++ Забиндить второй аргумент функции, используя std::bind2nd
C++ Создайте класс Тест, содержащий две закрытые переменные типа int с именами count и max
C++ Создайте класс String
Какого типа должен быть 3-ий аргумент функции make_heap? C++
Open Watcom нет перегрузки для оператора ввода для типа std::string C++
Абстрактный класс, как аргумент функции C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
24.12.2013, 12:27     Создайте класс со специальной версией оператора new, получающей второй аргумент типа string #2
helloy,
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
37
38
#include <iostream>
#include <string>
#include <vector>
#include <new>
 
class A
{
public:
   void* operator new(size_t size)
   {
      return ::operator new(size);
   }
   void* operator new(size_t size, std::nothrow_t hint)
   {
      return ::operator new(size, hint);
   }
   void* operator new(size_t size, void* place)
   {
      return ::operator new(size, place);
   }
   void* operator new(size_t size, const std::string& value)
   {
      values.push_back(value);
      return ::operator new(size);
   }
   static std::vector<std::string> values;
};
 
std::vector<std::string> A::values;
 
int main()
{
   A* a = new (std::to_string(__LINE__)) A;
   A* b = new (__FILE__) A;
   for (const std::string& v : A::values) std::cout << v << std::endl;
   delete a;
   delete b;
}
Yandex
Объявления
24.12.2013, 12:27     Создайте класс со специальной версией оператора new, получающей второй аргумент типа string
Ответ Создать тему
Опции темы

Текущее время: 18:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru