Visual C++ проект

Тема в разделе "WASM.BEGINNERS", создана пользователем kernel16, 14 апр 2011.

  1. kernel16

    kernel16 Human Vl

    Публикаций:
    0
    Регистрация:
    29 окт 2010
    Сообщения:
    316
    как в Visual C++ 10 в один проект включить несколько .cpp файлов, использующих одни переменные?
     
  2. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Нескромный вопрос: как твои вопросы к низкому уровню относятся?
    А вообще создаёшь .h с переменными и инклюдишь его в .cpp.
     
  3. kernel16

    kernel16 Human Vl

    Публикаций:
    0
    Регистрация:
    29 окт 2010
    Сообщения:
    316
    в этач к 1ому посту бросил. тыкните носом, как кошку), что не так.
    никак, спросить негде:lol: "умные люди мало где сидят..."
    Код (Text):
    1. 1>------ Построение начато: проект: CompMan, Конфигурация: Debug x64 ------
    2. 1>Построение начато 14.04.2011 12:43:13.
    3. 1>InitializeBuildStatus:
    4. 1>  Обращение к "x64\Debug\CompMan.unsuccessfulbuild".
    5. 1>ClCompile:
    6. 1>  Для всех выходных данных обновления не требуется.
    7. 1>ManifestResourceCompile:
    8. 1>  Для всех выходных данных обновления не требуется.
    9. 1>main.obj : error LNK2005: "void * hInctance" (?hInctance@@3PEAXEA) уже определен в GetProfilDlgProc.obj
    10. 1>C:\Users\ker16\Documents\Visual Studio 2010\Projects\CompMan\x64\Debug\CompMan.exe : fatal error LNK1169: обнаружен многократно определенный символ - один или более
    11. 1>
    12. 1>СБОЙ построения.
    13. 1>
    14. 1>Затраченное время: 00:00:00.51
    15. ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
     
  4. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Мда, переопределение. Сейчас вспомню как такое решается.
     
  5. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Вроде раз все они в одном проекте то только в одном .cpp подключаешь.
     
  6. kernel16

    kernel16 Human Vl

    Публикаций:
    0
    Регистрация:
    29 окт 2010
    Сообщения:
    316
    1>------ Построение начато: проект: CompMan, Конфигурация: Debug x64 ------
    1>Построение начато 14.04.2011 12:56:10.
    1>InitializeBuildStatus:
    1> Обращение к "x64\Debug\CompMan.unsuccessfulbuild".
    1>cl : командная строка warning D9030: "/Gm" несовместим с многопроцессорной обработкой; ключ /MP игнорируется
    1> GetProfilDlgProc.cpp
    1>GetProfilDlgProc.cpp(1): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "CALLBACK"
    1>GetProfilDlgProc.cpp(1): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
    1>GetProfilDlgProc.cpp(1): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "GetProfilDlgProc"
    1>GetProfilDlgProc.cpp(1): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
    1>GetProfilDlgProc.cpp(1): error C2065: HWND: необъявленный идентификатор
    1>GetProfilDlgProc.cpp(1): error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "hWnd"
    1>GetProfilDlgProc.cpp(1): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
    1>GetProfilDlgProc.cpp(1): error C2059: синтаксическая ошибка: )
    1>GetProfilDlgProc.cpp(2): error C2143: синтаксическая ошибка: отсутствие ";" перед "{"
    1>GetProfilDlgProc.cpp(2): error C2447: {: отсутствует заголовок функции (возможно, используется формальный список старого типа)
    1> Generating Code...
    1> Skipping... (no relevant changes detected)
    1> main.cpp
    1>
    1>СБОЙ построения.
    1>
    1>Затраченное время: 00:00:00.07
    ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


    теперь он вообще не знает о hInctance)))
     
  7. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Ладно, буду дальше вспоминать. Давно на сях не писал...
     
  8. kernel16

    kernel16 Human Vl

    Публикаций:
    0
    Регистрация:
    29 окт 2010
    Сообщения:
    316
    а я вот с асма решил немного на с++ перейти..
     
  9. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Помню была когда-то у меня такая-же проблема. Но как решил не помню...
     
  10. fsd

    fsd New Member

    Публикаций:
    0
    Регистрация:
    4 июл 2010
    Сообщения:
    353
    extern
     
  11. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    http://www.rsdn.ru/forum/cpp/2706624.1.aspx
     
  12. Igor1024

    Igor1024 Васил Троянов Боянов (Azis)

    Публикаций:
    0
    Регистрация:
    15 окт 2010
    Сообщения:
    345
    Адрес:
    Sliven, Bulgaria
    Вот и вспомнили оба.
     
  13. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    Код (Text):
    1. GLOBALS.H:
    2. ----------
    3. typedef struct tag_GLOBALS
    4. {
    5.     HMODULE     Instance;
    6.     TCHAR       WorkDir [MAX_PATH];
    7.     HANDLE      Allocator;
    8.     //
    9.     // etc.
    10.     //
    11. }
    12. GLOBALS;
    13.  
    14. #ifdef GLOBALS_DECLARED_HERE
    15.     GLOBALS glb;
    16. #else
    17.     extern GLOBALS glb;
    18. #endif
    19.  
    20. MAIN.CPP:
    21. ---------
    22. #define GLOBALS_DECLARED_HERE
    23. #include "Globals.h"
    24.  
    25. int main ()
    26. {
    27.     //
    28.     // use glb here ...
    29.     //
    30.     return 0;
    31. }
    32.  
    33. MODULE1.CPP:
    34. ---------
    35. #include "Globals.h"
    36.  
    37. ...
    38.  
    39.  
    40. MODULE2.CPP:
    41. ---------
    42. #include "Globals.h"
    43.  
    44. ...
    45.  
    46.  
    47. MODULE3.CPP:
    48. ---------
    49. #include "Globals.h"
    50.  
    51. ...
    52.  
    53.  
    54. etc.