Форум программистов, компьютерный форум, киберфорум
C++ Builder: FireMonkey
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 13.07.2013
Сообщений: 27
1

Создание объекта класса вне юнита, где объявлен этот класс

21.07.2013, 12:31. Показов 1401. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Первый юнит (Core.cpp):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//---------------------------------------------------------------------------
#pragma hdrstop
#include "Сore.h"
#include "Window.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
//--------------------------------------------------------------------------- 
class cMap{
private:
public:
    int element;
    TImage *Picture;
    cUnit *Unit;
    cMap();
    ~cMap();
};
//---------------------------------------------------------------------------
Второй юнит (Window.cpp)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//---------------------------------------------------------------------------
#include <fmx.h>
#pragma hdrstop
#include "Window.h"
#include "Сore.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.fmx"
//---------------------------------------------------------------------------
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner){
    cMap **Map;
    Map = new cMap* [40];
    for (int i = 0; i < 50; i ++) {
        Map = new cMap;
    }
}
//---------------------------------------------------------------------------
Пишет ошибку, мол не знает что такое cMap.

P.S. Видимость классов одного модуля из другого я не понимаю.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.07.2013, 12:31
Ответы с готовыми решениями:

Изменение метода вне класса, где он объявлен
Всем доброго времени суток. Возникла такая проблема - есть метод (clickBlock), объявленный в класс...

Реализация интерфейса классом, где объявлен этот интерфейс
Почему такой код не работает? Есть ли способ исправления без переноса интерфейса вне класса...

Где объявлен класс Thread?
Не могу найти...VS2005

Создание объекта произвольного класса по указателю на базовый класс
Есть некий абстрактный базовый класс . Мы знаем , что от этого базового класса будет образовано...

5
1702 / 898 / 207
Регистрация: 25.11.2009
Сообщений: 1,847
21.07.2013, 12:52 2
Описание класса
C++
1
2
3
4
5
6
7
8
9
class cMap{
 private:
 public:
 int element;
 TImage *Picture;
 cUnit *Unit;
 cMap();
 ~cMap();
 };
Нужно разместить не в Core.cpp, а в Core.h

Core.h уже подключен в Window.cpp
C++
1
#include "Сore.h"
поэтому описание класса станет видимо в этом юните
0
0 / 0 / 0
Регистрация: 13.07.2013
Сообщений: 27
21.07.2013, 12:55  [ТС] 3
Lelik-pahan, сделал, вот что вылезло.
Миниатюры
Создание объекта класса вне юнита, где объявлен этот класс  
0
1702 / 898 / 207
Регистрация: 25.11.2009
Сообщений: 1,847
21.07.2013, 12:59 4
Добавь в Core.h
C++
1
#include <ExtCtrls.hpp>
0
0 / 0 / 0
Регистрация: 13.07.2013
Сообщений: 27
21.07.2013, 13:01  [ТС] 5
Lelik-pahan, теперь он за каким-то делом полез в vcl, хотя я работаю с fmx...
Миниатюры
Создание объекта класса вне юнита, где объявлен этот класс  
0
1702 / 898 / 207
Регистрация: 25.11.2009
Сообщений: 1,847
21.07.2013, 13:09 6
в таком случае в Core.h нужно не
C++
1
#include <ExtCtrls.hpp>
, а
C++
1
#include <fmx.h>
1
21.07.2013, 13:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.07.2013, 13:09
Помогаю со студенческими работами здесь

Как создать класс, где возможно создание только одного объекта?
Как создать класс, где возможно создание только одного объекта?

Как сделать так, чтобы был доступ к методу вложенного класса, если объявлен только внешний класс
То есть если в классе Class есть вложенный класс innerClass с методом method() была возможна такая...

Доступ к созданию объекта класса из вне
Привет! Только приступил к изучению классов. Столкнулся с вопросами на счёт конструктора и...

Функция вне класса для передачи функции объекта
Добрый вечер, уважаемые форумчане. Столкнулся с таким пунктом в условии задания: Создать функцию...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru