Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Редактирование сообщения в Где объявлять класс ole


Автор: BorisK 5.9.2004, 12:26
Здравствуйте!
Потребитель описан в dbosfood.h, хочу использовать его в food.cpp. Объявил в food.h.
Выдает три ошибки:
error C2146: syntax error : missing ';' before identifier 'm_ole_food'
error C2501: 'Cdbosfood' : missing storage-class or type specifiers
error C2501: 'm_ole_food' : missing storage-class or type specifiers

#if !defined(AFX_FOOD_H__46F4441D_0A9A_49DB_B9F8_2794AC2A3D28__INCLUDED_)
#define AFX_FOOD_H__46F4441D_0A9A_49DB_B9F8_2794AC2A3D28__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// FOOD.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// FOOD dialog

class FOOD : public CDialog
{
//объявляю здесь
Cdbosfood m_ole_food;
// Construction
public:
FOOD(CWnd* pParent = NULL); // standard constructor

// Dialog Data

//{{AFX_DATA(FOOD)
enum { IDD = IDD_DIALOG1 };
CString m_code;
CString m_name;
//}}AFX_DATA


// Overrides

// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(FOOD)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL

// Implementation
protected:

// Generated message map functions
//{{AFX_MSG(FOOD)
virtual BOOL OnInitDialog();
afx_msg void OnNew();
afx_msg void OnLast();
afx_msg void OnFirst();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_FOOD_H__46F4441D_0A9A_49DB_B9F8_2794AC2A3D28__INCLUDED_)

Подскажите, пожалуйста, как правильно объявить.
Заранее благодарен!

Автор: Олег М 6.9.2004, 06:06
Цитата(BorisK @ 5.9.2004, 15:26)
error C2146: syntax error : missing ';' before identifier 'm_ole_food' error C2501: 'Cdbosfood' : missing storage-class or type specifiers error C2501: 'm_ole_food' : missing storage-class or type specifiers

А где у тебя эти классы объявлены? В dbosfood.h? Включи этот заголовок в food.cpp перед food.h или, лучше, в food.h:
Код

#if !defined(AFX_FOOD_H__46F4441D_0A9A_49DB_B9F8_2794AC2A3D28__INCLUDED_)
#define AFX_FOOD_H__46F4441D_0A9A_49DB_B9F8_2794AC2A3D28__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// FOOD.h : header file
//


#include "dbosfood.h"


/////////////////////////////////////////////////////////////////////////////
// FOOD dialog

class FOOD : public CDialog
{
//объявляю здесь
Cdbosfood m_ole_food;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)