在struct channel 加上 typedef

typedef struct channel

解决方案 »

  1.   

    怎么定义呢,我定义了以后老是说我的CString 没有定义可是当我把.h文件引入后,又告诉我出现重定义,怎么解决??
      

  2.   

    我加了的啊,就是不能用CString 类,我还没有试过别的类可不可以
      

  3.   

    不能把它定义为一个CString类,肯定行的。找一找其他原因.
      

  4.   

    small_wei(small)说的没错,应该没有问题的。
    typedef struct channel
    {
      BYTE bChannelnum;
      CString sTYPE;
       .....
     }
      

  5.   

    可以struct和class区别是struct成员默认public
    class是private
      

  6.   

    我也试过,不行。我用的是WINME+VC6+SP4。
    好像以前在WIN98+VC6是行的。
    或许是安全稳定的原因,CString str时,str的大小不确定。
    可用
      char sName[最长的字符串长度]; 
    代替。
    用 lstrcpy(sName,"如你处理的字符串");
    来处理。
      

  7.   

    to small_wei(small) 
    装上SP4或SP5试试吧。
      

  8.   

    我的是VS6.0+sp4/win2000 我刚才还在编译
      

  9.   

    赞同 hyc1980(???) 
    C++可以用struct申明类,与class区别是:
    struct Cls
    {
        int x;
        int fn();
    };
    其中x 和 fn是公有的
    class Cls
    {
        int x;
        int fn();
    };
    其中x 和 fn 是私有的
      

  10.   

    To small_wei(small) :
    用   CString str;
    还是 CString *str;  //这个编译时没错,但用的时候就错了。若前面能成功,那可能是WinMe的问题了。WinMe较Win2000新
      

  11.   

    谢谢各位,我也试过了定义一个其他的类在struct里面没有问题,可是就是CString不行,要不我把定义贴出来大家帮我看看好么
    再次谢谢
      

  12.   

    请参照
    typedef struct S_TEST
    {
    DWORD id;
    CString sTemp;
    };
    CDialog1::test()
    {
    S_TEST sTemp;
    sTemp.id=1;
    sTemp.sTemp="aaaaaaaaaa";
    m_1=sTemp.sTemp;//m_1<==是用来显示的edit
    UpdateData(FALSE);
    }
    是可以的
      

  13.   

    刚才我的一个朋友给我说,CString是mfc中的类,因为在我程序中没有引用mfc库所以不行,可是我加入相关的头文件后却出现重复引用的错误。再次谢谢各位了马上给分