Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C/C++ Сетевое программирование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2012, 22:21   #1
Haze_82
Новичок
Джуниор
 
Регистрация: 21.12.2012
Сообщений: 3
По умолчанию непонятная ошибка, которая звучит как понятная

Всем привет!
Делаю простенькое сетевое приложение VS2010 по материалам http://reis.rtf.urfu.ru/docs/MFC/Index.htm - уроки 33-36
По сути это тест для проверки сети.
Вроде все делаю правильно, но при компиляции вылазит абсурдная ошибка
Код:
class CMyDlg : public CDialog{ //наш класс - потомок CDialog
public:
	CMySocket m_pListenSocket; //Слушающий сокет
    CMySocket m_pConnectSocket; //Передающий сокет
...
error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "m_pListenSocket"
это первая и далее еще куча ошибок

Че за бред? Выкладываю проект (он небольшой), может у кому-нибудь удастся откомпилировать.
Просто замучился уже, пробовал пошагово коментить разные отрывки в коде, тогда ошибка пропадала, но при этом приложение не работает.
Буду признателен за разъяснения!
Haze_82 вне форума Ответить с цитированием
Старый 22.12.2012, 12:05   #2
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

наверное он класс CMySocket не может найти
rrrFer вне форума Ответить с цитированием
Старый 23.12.2012, 07:16   #3
Haze_82
Новичок
Джуниор
 
Регистрация: 21.12.2012
Сообщений: 3
По умолчанию

Код:
#pragma once
#include "afxwin.h" //для использования CDialog
#include "resource.h"
#include "MySocket.h"//   !!!!!ФАЙЛ КЛАССА CMySocket!!!!!!!!!
//class CMySocket;
class CMyDlg : public CDialog{ //наш класс - потомок CDialog
public:
	CMySocket m_pListenSocket; //Слушающий сокет
    CMySocket m_pConnectSocket; //Передающий сокет
Цитата:
наверное он класс CMySocket не может найти
А то что хедер вставлен ему на это плевать??
Haze_82 вне форума Ответить с цитированием
Старый 23.12.2012, 12:01   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Вам не кажется несколько странным, что вы подключаете MySocket.h а он подключает ServerDlg.h а он подключает MySocket.h?
waleri вне форума Ответить с цитированием
Старый 23.12.2012, 12:53   #5
Haze_82
Новичок
Джуниор
 
Регистрация: 21.12.2012
Сообщений: 3
По умолчанию

Цитата:
Вам не кажется несколько странным, что вы подключаете MySocket.h а он подключает ServerDlg.h а он подключает MySocket.h?
Я правда извиняюсь, не совсем понял, то вы хотели сказать.

По сути. Есть файл ServerDlg.h - в нем описан класс CMyDlg, в котором должны использоваться переменные типа CMysocket (слушающий и передающие сокеты).Для этого вставлен #include "MySocket.h".
Haze_82 вне форума Ответить с цитированием
Старый 23.12.2012, 22:25   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Хорошо, я сформулирую по другому - у вас неправильный порядок включения файлов.

Кстати, на приведенном в форуме примере как раз таки не вставлен - вставка закоментирована. Но даже если разкоментировать, толку не будет.
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не понятная ошибка с перегрузкой операторов RaTeN Общие вопросы C/C++ 3 10.03.2012 16:09
Не понятная ошибка ReaktiVe_SworD Общие вопросы C/C++ 0 02.10.2011 13:09
Не понятная ошибка!!! VintProg Общие вопросы C/C++ 26 11.09.2011 12:46
не понятная ошибка в цикле case designer999 Общие вопросы Delphi 11 27.03.2010 17:40
не понятная ошибка ManInBlack Помощь студентам 2 20.10.2008 23:33