Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с IDE Visual C++ 2008 
V
    Опции темы
WolfAlone
  Дата 15.9.2009, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Здравствуйте! Щас задам тупой вопрос  smile 

Сел за изучение VC++2008. Создал проект, Simple1.
Слева, в "Solution explorer" находиться список файлов проекта.

1. Открыл файл Simple1.cpp, записал туда класс (допустим, вот такой):
Код

class myClass
{
private:
    int num;
public:
    int getNum() { num=1; return num; }
};

2. При попытке редактора кода формы - открывается файл Form1.h, в который собственно и пишется код формы.

На сколько я понял - код программы (классы, функции и пр.) должен быть именно в файле Simple1.cpp (в моём случае), а вызываться эти самые функции и методы классов - должны как раз из файла Form1.h

При попытке сделать так (в файле Form1.h):

myClass mcl1; - ошибка, говорит, что не найден такой идетификатор (undeclared identifier);

Вопрос: как правильно это нужно делать?

P.S. Заранее благодарю!


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
narKoD
Дата 15.9.2009, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



как я понял, тебе надо создать 2 файла: Simple1.h и Simple1.cpp

Simple1.h
Код

#ifndef SIMPLE1_h
#define SIMPLE1_h

class myClass
{
private:
    int num;
public:
    myClass();
    int getNum() const;
};

#endif


Simple1.cpp
Код

#include "Simple1.h"

myClass::myClass() {num=1;}

int myClass::getNum() const {return num;}


затем вставить 
#include "Simple1.h"
в остальные файлы

Это сообщение отредактировал(а) narKoD - 15.9.2009, 23:59
PM MAIL ICQ Jabber   Вверх
Acer
Дата 16.9.2009, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

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



Классы нужно описывать в заголовочных файлах, то есть не в Simple1.cpp, а в Simple1.h.
Если методы inline или слишком простые, то можно их реализацию сделать в заголовке и тогда не использовать Simple1.cpp.
Например
Код

//Simple1.h
class Simple1 {
public:
    Simple1(){}
    ~Simple1(){}
public:
    inline void set( int __n ){ _n = __n; }
    inline int get(){ return n; }
private:
    int _n;
};

Код

//Form1.cpp
#include <iostream>
#include "Simple1.h"
int main(void){
    Simple1 obj;
    obj.set( 10 );
    int b = 2 * obj.get();
    std::cout << b << std::endl;
}

PM MAIL   Вверх
WolfAlone
Дата 16.9.2009, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Наверное я всё-таки не совсем правильно поставил вопрос... Постараюсь уточнить!

Когда я работал с Borland C++ Builder - такого вопроса не возникало, там всё как-то более ли менее понятно. Но мне совершенно не нравиться, как Builder себя порой ведёт. Какой-то он мальца кривоватый (сугубо личное ИМХО!). Решил взяться за Visual C++ 2008.

В этом сообщении я прикрепил скрин, с Solution Explorer и рабочей областью (редактором кода).

Вопрос собственно вот в чём:
В проекте имеются 2 файла, которые меня интересуют (в данном случае это файл Form1.h). Когда я ставлю на форму кнопку, и 2 раза на неё щёлкаю (в режиме конструирования формы) - открывается редактор кода (скрин в этом сообщении). Это код располагается в файле Form1.h.

Как я понимаю, код классов и функций - должен располагаться в файле Simple1.cpp?

Присоединённый файл ( Кол-во скачиваний: 16 )
Присоединённый файл  img1.JPG 74,92 Kb


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
WolfAlone
Дата 16.9.2009, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



В это сообщение прикрепляю второй скрин. В этом скрине файл Simple1.cpp, в котором как я понимаю должны содержаться классы и функции, которые мне нужны. Так же, там содержится функция main();

Вопрос:

Если класс объявлен в файле Simpel1.cpp, а код обработчика события "нажатие на кнопку" - находиться в файле Form1.h.
Как мне использовать этот класс? (В моем примере - myClass).

Присоединённый файл ( Кол-во скачиваний: 14 )
Присоединённый файл  img2.JPG 53,95 Kb


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
Acer
Дата 16.9.2009, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

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



Дык, это получается .Net, а не С++
PM MAIL   Вверх
WolfAlone
Дата 16.9.2009, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



А разве этот же компилятор (эта же среда) не умеет компилировать обычные приложения (без dot net)?
Или приведённый мной проект полностью .Net зависимый!?


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
Acer
Дата 16.9.2009, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

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



Вот это .Net
user posted image
PM MAIL   Вверх
WolfAlone
Дата 17.9.2009, 08:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Уважаемый Acer, я в этом ещё совсем дуб! Вы не могли бы подсказать, можно ли создать в Visual C++ 2008 независимый от .net (и если да, то как)? 

Только что попробовал создать "Win32 Project". Результаты не впечатлили! После запуска программы - появилась форма аля Borland С++ для Win16 (Windows 3.11).

Скажите пожалуйста, кто знает, насколько программы под .net работают медленнее обычных? Насколько больше они подвержены "взлому" (как я понимаю, .exe под .net - представляет собой промежуточный код, который затем интерпретируется)?

Если кто-нибудь ставил под *nix "MONO" - подскажите пожалуйста, насколько хорошо осуществлена поддержка .net в MONO и какую версию .net он в данный момент поддерживает?

Ещё очень интересует, существуют ли реализации поддержки .net для других ОС?


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
Acer
Дата 17.9.2009, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

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



Цитата(WolfAlone @ 17.9.2009,  07:06)
Вы не могли бы подсказать, можно ли создать в Visual C++ 2008 независимый от .net (и если да, то как)?

File -> New -> Project... -> Visual C++ -> Win32 Project
Получится гуи-проект. Там .Net не будет.

Добавлено через 2 минуты и 7 секунд
На сколько я понял по последнему посту, Вы хотите писать на C#(спрашивали о MONO). Потому, создайте тему лучше в соответствующем разделе, дабы не флудить тут.
PM MAIL   Вверх
WolfAlone
  Дата 17.9.2009, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Нет, я не хочу писать на C#! Я хочу писать на C++ под Win32 и *nix системы. Под .Net  существует ведь не только C# (хотя он считается основным как я понял), есть же ведь ещё и C++ .net, Visual Basic.net и даже Delphi .net есть (по моему).

В данный момент стоит задача: в кратчайшие сроки разработать небольшую программу для Win32 с GUI интерфейсом, желательно на C++.

Только что почитал про Bulder... Borland его что-то совсем обидел! Код, герерирумый Builder'ом - работает медленнее Delphi'йского!!! (это *опа  smile  ) В виду чего разработка в Builder'е - полностью отпадает, как вариант.

Из всего известного мне, остался лишь:
wxDev-C++, который выдает на выходе минимум 3Мб, что не есть хорошо и
Visual C++ 2008 - который генерирует страшное окно, которое не поддаётся визуальному редактированию...

Вопрос: что делать?  smile   smile 

Неужели Visual C++ 6 - единственная среда разработки, которая генерирует более ли менее валидный код (.exe), не привязана к dot net, и обладает визуальным конструктором форм? И которую при всех "достоинствах" - нельзя лицензировать... - что тоже не есть хорошо!


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
jonie
Дата 17.9.2009, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



чет вы все в кучу смешали.
то что сгенирировала вам студия это проект winAPI формы. То что генерирует VC6(вероятно) есть диалоговое приложение, использующее ресурсы.


используйте HTML и не парьтесь. Например http://www.terrainformatica.com/htmlayout/main.whtm


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
WolfAlone
Дата 17.9.2009, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



Зачем мне HTML?

Вопрос: есть ли возможность визуального редактирования этого самого "проекта winAPI формы"? Или всё как в 80-х годах, нужно руками писать?


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
jonie
Дата 17.9.2009, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата

есть ли возможность визуального редактирования этого самого "проекта winAPI формы"
нет и не планируется.
Цитата

Зачем мне HTML?
формочки можно рисовать гламурные.



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
WolfAlone
  Дата 17.9.2009, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


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

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



На мой взгляд HTML изначально был создан не для этого! Хотя, конечно, луноходом теоретически тоже можно поле вспахать...

Про DotNet прочитал, производительность не впечатлила... По крайней мере мне не понравилась, по сравнению с производительностью "стандартных" приложений.

Скажите пожалуйста, а возможно ли программы созданные в Visual C++ 6 (с MFC) откомпилировать через бесплатный Visual C++ ToolKit 2003? Или через какой-нибудь другой компилятор?

Ещё очень интересует, может кто-нибудь может подсказать платный/бесплатный компилятор с IDE-средой, для рисования форм? Интересует собственно только базовый набор т.н. "компонентов": кнопки, textBox'ы, и пр. Ничего дополнительного типа "готовые компоненты для работы с БД" - не требуется...

P.S. wxDev-C++ не впечатлил размерами выходного файла...


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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