在MFC中,我定义了一个结构MemoFormat包含以下四个成员
class MemoFormat
{
         public:
         char date[50];
         char event[100];
         char music[20];
         char predict[200];
};
 
MemoFormat prompt[200];//应该放在哪里定义?能不能定义为全局对象?问题:
A和B是两个对话框
类A和类B中我都要调用READMEMO()函数,READMEMO()函数通过定义的数组对象prompt来引用MemoFormat的
各成员。READMEMO()函数直接放到StdAfx.h中声明和放到StdAfx.cpp中实现。
即  READMEMO()
    {
         ...........
         prompt[j].date=...;
         prompt[j].event=...;
           ..........
    }
我想问的是这个数组对象prompt应该放在哪里定义,才能让类A和类B中的函数均可访问这些成员。应该如何定义??(A和B在调用READMEMO()函数时均使用同一个数组对象prpmpt)
不好意思,上面说的有点乱,总的来说我需要实现一下6点:
1. A类------调用READMEMO()函数
2. B类------调用READMEMO()函数
3. StdAfx.h-----声明READMEMO()
4. StdAfx.cpp---实现READMEMO()
5. READMEMO()----通过数组对象prompt访问MemoFormat中各成员
6. A类、B类部分函数也可访问MemoFormat中各成员问题:我应该把类MemoFormat定义和数组对象定义放到哪里实现?
      在A和B中怎样才能使用数组对象prompt
      

解决方案 »

  1.   

    你可以添加一个.h的文件,然后在StdAfx.h中加上这个头。
    在这个.h中定义文件头MemoFormat prompt[200];//
      

  2.   

    还有在头中定义
    class MemoFormat 

            public: 
            char date[50]; 
            char event[100]; 
            char music[20]; 
            char predict[200]; 
    }; 
      

  3.   

    你定义一个通用的h头文件,然后需要用的cpp中包含这个common的头文件,来使用全局对象
      

  4.   

    class MemoFormat 

            public: 
            char date[50]; 
            char event[100]; 
            char music[20]; 
            char predict[200]; 
    }extern MemoFormat prompt[200];
      

  5.   

    定义到CXXXApp::CWinApp中也可以,通过theApp来访问