Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/55: Рейтинг темы: голосов - 55, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 36

Необъявленный идентификатор при создании формы

03.03.2013, 18:43. Показов 10800. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не могу вывести форму в VS2012. Создаю две формы (одна автоматом создаётся, form1, другую сам, MyForm).
При написании кода ничего не пишет (ошибок), при компиляции выводит
C++ Скопировано
1
2
3
4
5
6
7
8
9
1>------ Построение начато: проект: Приложение Windows Forms6, Конфигурация: Debug Win32 ------
1>  stdafx.cpp
1>c:\users\рома и женя\documents\visual studio 2012\projects\win32\приложение windows forms6\приложение windows forms6\MyForm.h(82): error C2065: MyForm1: необъявленный идентификатор
1>c:\users\рома и женя\documents\visual studio 2012\projects\win32\приложение windows forms6\приложение windows forms6\MyForm.h(82): error C2065: op: необъявленный идентификатор
1>c:\users\рома и женя\documents\visual studio 2012\projects\win32\приложение windows forms6\приложение windows forms6\MyForm.h(82): error C2061: синтаксическая ошибка: идентификатор "MyForm1"
1>c:\users\рома и женя\documents\visual studio 2012\projects\win32\приложение windows forms6\приложение windows forms6\MyForm.h(83): error C2065: op: необъявленный идентификатор
1>c:\users\рома и женя\documents\visual studio 2012\projects\win32\приложение windows forms6\приложение windows forms6\MyForm.h(83): error C2227: выражение слева от "->Show" должно указывать на тип класса, структуры или объединения либо на универсальный тип
1>          тип: 'unknown-type'
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
(пробовал на разных формах поэтому myform1)
Вот код формы из которой вызов
C++ Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#pragma once
#include "Form1.h"
#include "MyForm1.h"
 
namespace WinForms_NET4 {
 
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
 
    /// <summary>
    /// Сводка для MyForm
    /// </summary>
    public ref class MyForm : public System::Windows::Forms::Form
    {
    public:
        MyForm(void)
        {
            InitializeComponent();
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~MyForm()
        {
            if (components)
            {
                delete components;
            }
        }
    private: System::Windows::Forms::Button^  button1;
    protected: 
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->button1 = (gcnew System::Windows::Forms::Button());
            this->SuspendLayout();
            // 
            // button1
            // 
            this->button1->Location = System::Drawing::Point(0, 0);
            this->button1->Name = L"button1";
            this->button1->Size = System::Drawing::Size(75, 23);
            this->button1->TabIndex = 0;
            this->button1->Text = L"button1";
            this->button1->UseVisualStyleBackColor = true;
            this->button1->Click += gcnew System::EventHandler(this, &MyForm::button1_Click);
            // 
            // MyForm
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(624, 322);
            this->Controls->Add(this->button1);
            this->Name = L"MyForm";
            this->Text = L"Тест MenuForm2";
            this->ResumeLayout(false);
 
        }
#pragma endregion
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
             {
                 MyForm1^op = gcnew MyForm1();
                 op->Show();
             }
    };
}
подскажите пожалуйста где ошибка.
P.S. Я недавно начал, читаю VC++ 2010 для начинающих, там написано так, но невыходит. Прошу не отправлять в google, т.к. искал. Заранее спс.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.03.2013, 18:43
Ответы с готовыми решениями:

Необъявленный идентификатор у формы
Работаю в Visual studio 2012. В начале файла Form1.h есть оператор #include &quot;Settings.h&quot; Место ошибки: private: System::Void...

Необъявленный идентификатор типа формы, а так же задача по обмену данными между формами
Добрый день. Стоит задача разработки приложения на С++ с CLI Windows Forms, т.е. на формах. Делается это все в MS VS17. Шаблон проекта...

Необъявленный идентификатор при использовании DataGridView
Пожалуйста помогите исправить ошибку. фул код: #pragma once namespace My312 { using namespace System; using...

5
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4704 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
03.03.2013, 20:28
UnrealFire, покажите код MyForm1.h. И убедитесь, что MyForm1.h находится в проекте WinForms_NET4. Хотя если бы компилятор не мог найти, то написал бы, но все-таки. Может он прикрыт своим namespace?
0
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 36
03.03.2013, 21:30  [ТС]
Цитата Сообщение от IGPIGP Посмотреть сообщение
UnrealFire, покажите код MyForm1.h. И убедитесь, что MyForm1.h находится в проекте WinForms_NET4. Хотя если бы компилятор не мог найти, то написал бы, но все-таки. Может он прикрыт своим namespace?
вот код myForm1
C++ Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#pragma once
#include "MyForm.h"
#include "Form1.h"
 
namespace WinForms_NET4 {
 
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
 
    /// <summary>
    /// Сводка для MyForm1
    /// </summary>
    public ref class MyForm1 : public System::Windows::Forms::Form
    {
    public:
        MyForm1(void)
        {
            InitializeComponent();
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~MyForm1()
        {
            if (components)
            {
                delete components;
            }
        }
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->components = gcnew System::ComponentModel::Container();
            this->Size = System::Drawing::Size(300,300);
            this->Text = L"MyForm1";
            this->Padding = System::Windows::Forms::Padding(0);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
        }
#pragma endregion
    };
}
Вот скрин папок проекта
https://www.cyberforum.ru/atta... 1362335411

P.S. namespace один. проверял уже
P.P.S. может проект приложить? в архиве?
Миниатюры
Необъявленный идентификатор при создании формы  
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4704 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
03.03.2013, 23:05
Как я понял Form1.h это стартовая, а MyForm.h и MyForm1.h Вы хотите запустить из неё. Оставьте
#include "MyForm.h"
#include "MyForm1.h"
в файле Form1.h и создавайте их экземпляры, так как Вы показали в MyForm1.h. Самый простой путь запускать методом ShowDialog().
0
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 38
06.03.2013, 18:49
У меня такая же проблема, form1 не хочет видеть другие формы.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4704 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
06.03.2013, 19:07
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

Цитата Сообщение от TaYloR Посмотреть сообщение
У меня такая же проблема, form1 не хочет видеть другие формы.
Посмотрите здесь, тут разные варианты:
Как сделать так, чтобы разные файлы могли видеть друг друга?
Ошибки при вызове форм - Syntax error
Как добавить кнопки на вторую форму?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.03.2013, 19:07
Помогаю со студенческими работами здесь

Form1: необъявленный идентификатор
Вчера начал &quot;работать&quot; в Visual Studio с формами (мне посоветовали поставить 2008-ой, хотя я так и не понял почему). Задача не сложная,...

Error C2065: gt: необъявленный идентификатор
Какую библиотеку можно подключить для решения ошибки? Код: private: System::Void button1_Click(System::Object^ sender,...

Ошибки в проекте - HWND: необъявленный идентификатор
Доброго времени суток. Возникла такая проблема: Пишу проект на C++ (Windows Forms), так вот... стоит мне написать код, что то типа этого:...

Необъявленный идентификатор (связь файлов через extern, include)
-Есть файл hfile.h, в котором содержатся определения пары классов, использующиеся во всей программе. -Есть главный файл mainfile.cpp с...

Необъявленный идентификатор
Всем привет). Не могу понять в чем ошибка. Пишет что i и j необъявленный идентификатор в 33 строке. Что может быть? #include...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
Метод с двумя буферами (или double buffering) или ping-pong buffering
Hrethgir 02.04.2025
Из ответов LM модели. Метод, который предполагает использование двух массивов для хранения промежуточных результатов сложения векторов, обычно применяется в сценариях, где необходимо минимизировать. . .
На любовном киберфронте
Alexander-7 01.04.2025
Недавно на одном малоизвестном сайте знакомств мною заинтересовалась девушка: «Текст немного странный. Но, судя по адресу почты, иностранка», – подумал я. Поколебавшись пару суток, я ответил ей:. . .
Как работает Node.js изнутри
run.dev 29.03.2025
Node. js изменил подход к разработке веб-приложений, позволив использовать JavaScript не только на стороне клиента, но и на сервере. Созданный в 2009 году Райаном Далем, этот открытый,. . .
Моки в Python: Mock Object Library
py-thonny 29.03.2025
Тестирование кода требует особого подхода, когда речь идёт о компонентах, взаимодействующих с внешним миром. Мы часто сталкиваемся с непредсказуемостью HTTP-запросов, чтением данных из базы или. . .
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер