Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 677
Завершенные тесты: 1
#1

Конструктор и деструктор анонимного класса - C++

23.03.2014, 21:04. Просмотров 1357. Ответов 26
Метки нет (Все метки)

Здравствуйте. Есть ли в С++ такая возможность? Очень нужна именно такая реализация класса, но если это невозможно, буду думать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2014, 21:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Конструктор и деструктор анонимного класса (C++):

Зачем нужны конструктор и деструктор класса? - C++
вот задание: Пользовательский класс Х должен содержать необходимые элементы-данные, которые создаются в динамической области памяти....

Для класса задать конструктор и деструктор - C++
Ребята,нужна помощь в написании программы. Для класса задать конструктор(для выделения памяти,открытия файлов,задания начальных значений...

Конструктор (деструктор) у класса, не имеющего тип - C++
Можно ли объявить и определить конструктор у класса, который не имеет тип? То есть у меня в программе всего 1 экземпляр этого класса,...

Дописать конструктор и деструктор для класса - C++
Помогите пожалуйста написать конструктор копии и деструктор, а также вызвать их, чтобы деструктор выводил на экран "работает" #include...

Создание класса с перегрузкой операторов конструктор и деструктор - C++
Создать класс времени (Time) содержащий закрытую переменную-член хранящую целое значение времени интервала в секундах. Интерфейс класса...

Нужно ли прописывать конструктор и деструктор для чисто виртуального абстрактного класса - C++
Всем привет! Порылся в интернете, но не смог найти конкретного ответа на свой вопрос. Возможно я просто не смог грамотно сформулировать...

26
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 677
Завершенные тесты: 1
24.03.2014, 14:50  [ТС] #16
Цитата Сообщение от 0x10 Посмотреть сообщение
Подключаем в два разных файла
Не понял что подключаем? Библиотеку? - Для этого есть препроцессор.

Добавлено через 6 минут
Получается, что объект WORLD глобальный, а вот создать такой же объект не из библиотеки не получиться - класс анонимный - как раз то, что мне нужно. В библиотеке есть класс и функции инициализации всего и освобождения. Т.е. при использовании библиотеки нужно подключить её, запустить Init() и по завершении запустить Release(). А всё необходимое сделает сама библиотека.
0
0x10
2479 / 1654 / 248
Регистрация: 24.11.2012
Сообщений: 4,098
24.03.2014, 15:01 #17
А проверьте-ка у себя такой пример.
Библиотека:
C++
1
2
3
4
5
6
7
// File World.h
#pragma once
 
class {
public:
    int n;
} WORLD;
Программа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// File main.cpp
#include "World.h"
 
#include <iostream>
 
void g();
 
int main()
{
    WORLD.n = 10;
    std::cout << "main: " << WORLD.n << std::endl;
    g();
}
C++
1
2
3
4
5
6
7
8
9
// File app.cpp
#include "World.h"
 
#include <iostream>
 
void g()
{
    std::cout << "app: " << WORLD.n << std::endl;
}
0
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 677
Завершенные тесты: 1
24.03.2014, 15:54  [ТС] #18
Цитата Сообщение от 0x10 Посмотреть сообщение
А проверьте-ка у себя такой пример.
Я намёк понял, но я использую единственный .cpp, а c множеством .h всё работает как надо.
0
0x10
2479 / 1654 / 248
Регистрация: 24.11.2012
Сообщений: 4,098
24.03.2014, 15:55 #19
Цитата Сообщение от Retyrn0 Посмотреть сообщение
Я намёк понял, но я использую единственный .cpp
Это частный случай, и полагаться на то, что так будет и дальше - не стоит.

Решение некорректно. Больше тут нечего говорить.
0
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 677
Завершенные тесты: 1
24.03.2014, 16:12  [ТС] #20
Цитата Сообщение от 0x10 Посмотреть сообщение
Это частный случай
Иных случаев не предвидится.
Если мне взбредёт в голову осуществить общедоступную реализацию, обязательно воспользуюсь советами, но пока я пишу библиотеку для себя, и мне одного срр более чем достаточно.

Вопрос был о конструкторе и деструкторе анонимного класса - я понял, они в с++ невозможны.
Спасибо огромное за ответы!
0
0x10
24.03.2014, 16:15
  #21

Не по теме:

Цитата Сообщение от Retyrn0 Посмотреть сообщение
Иных случаев не предвидится.
И 640 килобайт хватит всем. Проходили уже.
Ну я и не заставляю переписывать.

0
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
Завершенные тесты: 1
24.03.2014, 16:19 #22
Цитата Сообщение от Retyrn0 Посмотреть сообщение
Вопрос был о конструкторе и деструкторе анонимного класса - я понял, они в с++ невозможны.
тык
0
Retyrn0
45 / 45 / 3
Регистрация: 24.06.2013
Сообщений: 677
Завершенные тесты: 1
24.03.2014, 16:19  [ТС] #23
Цитата Сообщение от 0x10 Посмотреть сообщение
И 640 килобайт хватит всем
С головой. Это же всего-лишь игровой проект, сколько ему надо? ;-)
Как воспользоваться маленьким шрифтом с грифом "Не по теме"?
0
aLarman
24.03.2014, 16:24
  #24

Не по теме:

тег off

0
Retyrn0
24.03.2014, 16:27  [ТС]
  #25

Не по теме:

Спасибо, а-то кричу всё время крупным шрифтом - не серьёзно как-то)

0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
24.03.2014, 18:18 #26
Цитата Сообщение от aLarman Посмотреть сообщение
Ссылка, которую ты привел, не о том.

Добавлено через 3 минуты

Не по теме:

0x10, я потому и не стал спорить о синглтоне в первых постах, что бесполезно переубедить человека, пока он сам не набьет шишки. Возможно уже в условиях аврала на будущей работе и с риском завалить из-за этого сроки

0
Nick Alte
Эксперт С++
1640 / 1012 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
24.03.2014, 19:17 #27
А ещё можно вспомнить про decltype, которым можно произвольно наштамповать объекты даже анонимного класса.
0
24.03.2014, 19:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2014, 19:17
Привет! Вот еще темы с ответами:

При создании класса конструктор вызывается 2 раза, затем вызывается деструктор о_О - C++
Вот такой кодclass A { public: A(){} virtual ~A(){} }; class C { public:

Конструктор инициализации, конструктор копирования, деструктор - C++
Я сделал почти задание по перегрузке операторов. Осталось одно, тоесть три: конструктор инициализации, конструктор копирования, деструктор....

Создать класс "Вектор" и реализовать конструктор по умолчанию, конструктор копирования и деструктор - C++
Всем доброго времени суток! нужна ваша помощь! нужно создать класс вектор и реализовать конструктор по умолчанию, копирования и...

Конструктор класса не видит конструктор по умолчанию другого класса - C++
Ошибка, естественно, в Classes.cpp, в строке 20. Ругается, что у класса TailNode нет конструктора по умолчанию, хотя он там, конечно, есть....


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Опции темы

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