Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> глобальная структура, структуру для нескольких файлов 
V
    Опции темы
Igoreck
Дата 29.4.2008, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



У меня есть проект состоящий из нескольких форм. Надо создать структуру, которая будет видна во всех формах

Я создал пустой файл описания  DiffValues.h  , в нем создал структуру

  class STRUCT1
    {
    public:
      unsigned short value1;     
    unsigned short value1;
      };

И создал переменную структуры, перед которой указал ключевое слово extern 

extern STRUCT1 str1;

эту переменную структуры я задал в одном из файлов с расширением cpp:

STRUCT1 str1;

Во всех файлах, связанных с формами, где я хотел использовать эту структуру я написал 

#include " DiffValues.h"

В приложением с нуеправляемым кодом работало, а щас ругается на строчку 

class STRUCT1  
   
в файле  DiffValues.h    и выдает ошибку : 

error C2011: ' STRUCT1' : 'class' type redefinition

PM MAIL   Вверх
Kefir
Дата 29.4.2008, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

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



я, конечно, мало разбираюсь в с++, но по ходу он при каждом инклюде (хоть включается один и тот же файл) пытается снова определить структуру.
PM MAIL WWW Skype   Вверх
Dennnis
Дата 29.4.2008, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Напиши в начале файла DiffValues.h
#pagma once

--------------------
Get Rich or Die Tryin'
PM   Вверх
Igoreck
Дата 30.4.2008, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



понял в чем была ошибка: у меня вызывалась последовательность форм - т.е новая вызывалась из предыдущей - и чтобы вызвать коструктор новой формы для создания ее объекта я уже включал заголовочный файл новой в предыдущую и конечно, после того как я еще добавил #include " DiffValues.h" в каждую из форм он начал ругаться  - т.е надо было добавить эту директиву только в последний файл в последовательности 


ps to Dennnis  - спасиба - вариант с     "#pragma once"    - то же работает
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

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


 




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


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

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