Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 06.07.2010, 21:36   #1
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Печаль Проблема с класами в MFC

Всем привет!
Недавно у меня возникла следующая проблема в C++, компилятор ругается на строчки:
BOOL CserverDlg::OnInitDialog()
{
CDialog::OnInitDialog();

// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon

// TODO: Add extra initialization here

m_pListenSocket.SetParentDlg(this); //ругается вот сюда...
m_pConnectSocket.SetParentDlg(this); // ...и сюда
m_pListenSocket.Create(2000); //Создаем сокет на 2000 порту

return TRUE; // return TRUE unless you set the focus to a control
}
Как ругантся:
error C2664: 'CMySocket::SetParentDlg' : cannot convert parameter 1 from 'CserverDlg *const ' to 'CMySocket::CServerDlg *'
и

error C2664: 'CMySocket::SetParentDlg' : cannot convert parameter 1 from 'CserverDlg *const ' to 'CMySocket::CServerDlg *'
Помогите подправить код!
Если надо могу выложить весь проект (пользуюсь Visual Studio 2005)
Взарание спасибо!
(Offline)
 
Ответить с цитированием
Старый 06.07.2010, 21:49   #2
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: Проблема с класами в MFC

Хорс ниасилил, дак вперёд в С++ -__-
(Offline)
 
Ответить с цитированием
Старый 06.07.2010, 22:13   #3
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

Хорс ниасилил, дак вперёд в С++ -__-
Вообщето блиц и хорс я бросил ещё давно (и совсем не из-за того что не осилил). Если ты сым ничё не соображаеш, но сиди и молчи, ок?
----------------------------------------------------------------
Ну так вы мне поможите с кодом?
(Offline)
 
Ответить с цитированием
Старый 06.07.2010, 22:50   #4
jimon
 
Сообщений: n/a
Ответ: Проблема с класами в MFC

выложи лучше сразу весь код
 
Ответить с цитированием
Старый 06.07.2010, 23:13   #5
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

выложи лучше сразу весь код
Я лучше весь проект выложу (там он просто состоит из нескольких файлов)
---------> http://depositfiles.com/files/f90d8xazo <-----------------
(Offline)
 
Ответить с цитированием
Старый 07.07.2010, 01:08   #6
jimon
 
Сообщений: n/a
Ответ: Проблема с класами в MFC

от такого говнокодища (это прям нечто, плюс еще ncb файл выложить в архив, да) компилятор падает, я так толком и не понял за 5 минут из-за чего он падает

ошибка в том что имена в C++ чувствительны к регистру, потому CServerDlg переименуй в CserverDlg и вынеси его объявление из класса, вот так :
class CserverDlg;

class CMySocket : public CSocket
{
public:
public:
	CserverDlg* m_pDlg;
	CMySocket();
	virtual ~CMySocket();

	void CMySocket::SetParentDlg(CserverDlg *pDlg)
{
    m_pDlg=pDlg; //Указатель на диалоговое окно
}
public:
	virtual void OnAccept(int nErrorCode);
public:
	virtual void OnReceive(int nErrorCode);
};
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо за это полезное сообщение:
den (07.07.2010), impersonalis (07.07.2010)
Старый 07.07.2010, 12:50   #7
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

Спасибо, jimon , помогло!
(Offline)
 
Ответить с цитированием
Старый 07.07.2010, 14:40   #8
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

А вот ещё одна, в файле MySocket.cpp :
Код:
void CMySocket::OnAccept(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
AfxMessageBox(LPCTSTR("Соединение"));
m_pDlg->OnAccept();
this->OnAccept(nErrorCode);
CSocket::OnAccept(nErrorCode);
}

void CMySocket::OnReceive(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
AfxMessageBox(LPCTSTR("Данные получены"));
m_pDlg->OnReceive();
this->OnReceive(nErrorCode);
CSocket::OnReceive(nErrorCode);
}
Лог:
1>------ Build started: Project: server, Configuration: Debug Win32 ------
1>Compiling...
1>MySocket.cpp
1>d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(27) : error C2027: use of undefined type 'CserverDlg'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.h(23) : see declaration of 'CserverDlg'
1>d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(27) : error C2227: left of '->OnAccept' must point to class/struct/union/generic type
1>d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(36) : error C2027: use of undefined type 'CserverDlg'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.h(23) : see declaration of 'CserverDlg'
1>d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(36) : error C2227: left of '->OnReceive' must point to class/struct/union/generic type
1>Build log was saved at "file://d:\Рабочий стол\C++\My C++ Projects\Новая папка\sssss\server\server\Debug\BuildLog.htm"
1>server - 4 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Тут тоже скорей всего что то с класами, просто никогда с класами не работал, а вот щас пришлось...
(Offline)
 
Ответить с цитированием
Старый 07.07.2010, 15:38   #9
jimon
 
Сообщений: n/a
Ответ: Проблема с класами в MFC

добавь include CserverDlg в MySocket.cpp, и почитай книжки
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
den (07.07.2010)
Старый 07.07.2010, 21:34   #10
falcon
Разработчик
 
Аватар для falcon
 
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений
(для 470 пользователей)
Ответ: Проблема с класами в MFC

Сообщение от jimon Посмотреть сообщение
добавь include CserverDlg в MySocket.cpp, и почитай книжки
а лучше в обратном порядке.....
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
HolyDel (08.07.2010)
Старый 07.07.2010, 22:28   #11
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

добавь include CserverDlg в MySocket.cpp
ты имел в виду #include "serverDlg.h" добывить в самое начало файла MySocket.cpp ?
Всё равно не помогает, пишет:
d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(2 : error C2248: 'CserverDlg::OnAccept' : cannot access protected member declared in class 'CserverDlg'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\serverdlg.h(31) : see declaration of 'CserverDlg::OnAccept'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\serverdlg.h(9) : see declaration of 'CserverDlg'
1>d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\mysocket.cpp(37) : error C2248: 'CserverDlg::OnReceive' : cannot access protected member declared in class 'CserverDlg'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\serverdlg.h(32) : see declaration of 'CserverDlg::OnReceive'
1> d:\рабочий стол\c++\my c++ projects\новая папка\sssss\server\server\serverdlg.h(9) : see declaration of 'CserverDlg'
(Offline)
 
Ответить с цитированием
Старый 07.07.2010, 23:02   #12
jimon
 
Сообщений: n/a
Ответ: Проблема с класами в MFC

почитай книжки
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
falcon (07.07.2010)
Старый 07.07.2010, 23:20   #13
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Печаль Ответ: Проблема с класами в MFC

Сообщение от jimon Посмотреть сообщение
почитай книжки
Да я почитаю! Обязательно! Просто мне сейчас не дочтение ...
Мне прогу нужно доделать
Помогите пожалуста...
(Offline)
 
Ответить с цитированием
Старый 08.07.2010, 01:17   #14
-=SCiP=-
ПроЭктировщик
 
Аватар для -=SCiP=-
 
Регистрация: 23.09.2007
Сообщений: 126
Написано 11 полезных сообщений
(для 16 пользователей)
Ответ: Проблема с класами в MFC

=) ну. без полного алгоритма трудно чем то помочь.
а ты прогу просто для себя делаешь или для учебы?
если просто для себя, то можно же не всю книжку читать а про классы и их капризы. (Но лучше потом все прочесть) это видь хорошее лекарство от головной боли над мелкими проблемами.
(Offline)
 
Ответить с цитированием
Старый 08.07.2010, 12:33   #15
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Проблема с класами в MFC

=) ну. без полного алгоритма трудно чем то помочь.
а ты прогу просто для себя делаешь или для учебы?
если просто для себя, то можно же не всю книжку читать а про классы и их капризы. (Но лучше потом все прочесть) это видь хорошее лекарство от головной боли над мелкими проблемами.
Да только для себя, для учёбы мне ещё рано я толь в 9 класе учюсь (после лета уже в 10...). Я вообще интернет чат пишу (типа аськи), вот решил с написания сервера и клиента. По началу скачивал готовые проекты, доведёные до ума, но потом подумал что лучше сам начну писать (по учебникам, мануалам ...) и вот клиент вроде написал , а вот с сервером байда какаято получается.
А вообще вот готовые проекты (сервер (нерабочий), и клиент (вроде рабочий)) ----> http://depositfiles.com/files/2h636ek01
__________________
Мой сайт ---> http://xakni.ucoz.ru
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 10:07.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com