Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вынести функции в отдельный файл 
:(
    Опции темы
pushok
Дата 8.6.2012, 20:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 7.2.2007

Репутация: нет
Всего: нет



Доброго времени суток.

Вопрос может и глупый, но понять не могу.

Что сделано:
Unit1.cpp - тут обработчики нажатия кнопок (тут также были функции, но их по заданию нужно вынести в отдельный файл)
Создал Unit2.cpp
Код

//---------------------------------------------------------------------------

#include "Unit2.h"
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma package(smart_init)

//---------------------------------------------------------------------------
void stringgrid_to_matrix(int **m1,TStringGrid *sg1)
{
for(int i=0;i<4;i++)
 for(int e=0;e<7;e++)
  m1[i][e]=StrToInt(sg1->Cells[i][e]);
};
//---------------------------------------------------------------------------
void swap_rows(int **m)
{
int *m1=new int[4];
for(int i=0;i<3;i++)
 {
 for(int e=0;e<4;e++)
  m1[e]=m[e][i];
 for(int e=0;e<4;e++)
  m[e][i]=m[e][6-i];
 for(int e=0;e<4;e++)
  m[e][6-i]=m1[e];
 }
};
//---------------------------------------------------------------------------
void matrix_to_stringgrid(int **m1,TStringGrid *sg1)
{
for(int i=0;i<4;i++)
 for(int e=0;e<7;e++)
  sg1->Cells[i][e]=m1[i][e];
};
//---------------------------------------------------------------------------

Далее как нашел в интернете открыл Unit2.h и добавил туда описания функций
Код

//---------------------------------------------------------------------------

#ifndef Unit2H
#define Unit2H
void stringgrid_to_matrix(int **m1,TStringGrid *sg1);
void swap_rows(int **m);
void matrix_to_stringgrid(int **m1,TStringGrid *sg1);
#endif


В Unit1.cpp добавил строчку
#include "Unit2.h"

Нажимаю запустить, появляются ошибки:
Код

[C++ Error] Unit2.h(5): E2303 Type name expected
[C++ Error] Unit2.h(7): E2303 Type name expected
[C++ Error] Unit2.cpp(11): E2303 Type name expected
[C++ Error] Unit2.cpp(32): E2303 Type name expected


Поиск не дал результатов, связанных с типом функций.
Что-то совсем ступор. Подскажите где я накосячил.

Заранее благодарен за помощь.
PM ICQ   Вверх
artsb
Дата 8.6.2012, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Unit2 не знает про TStringGrid:
Код

#ifndef Unit2H
#define Unit2H

#include <Grids.hpp> // добавь эту строку

void stringgrid_to_matrix(int **m1,TStringGrid *sg1);
void swap_rows(int **m);
void matrix_to_stringgrid(int **m1,TStringGrid *sg1);
#endif



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
pushok
Дата 9.6.2012, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 7.2.2007

Репутация: нет
Всего: нет



Огромное спасибо.

Я добавлял в Unit2.cpp библиотеку vcl.h, но не помогало, а добавить в Unit2.h не догадался. Кстати, vcl не помогла, а как ты сказал помогло.
PM ICQ   Вверх
borisbn
Дата 9.6.2012, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 18
Всего: 135



Если уж совсем быть педантичным, то
Цитата(artsb @  8.6.2012,  21:57 Найти цитируемый пост)
#include <Grids.hpp> // добавь эту строку

лучше добавить в Unit2.cpp, а в Unit2.h заменить эту строку предобъявлением
Код
namespace Grids {
    class TStringGrid;
}



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0428 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.