这样的形式对不对的啊CString str[3][2] = {
   {"str1","Data1"},
   {"str2","Data2"},
   {"str3","Data3"}
};
这样申明的数组对不对的啊,就是[]号里的数值,然后我刚刚同学看了说这样是不对的,说了我没听懂,所以上来问问

解决方案 »

  1.   

    我也觉得没问题,不过在VS2010里有时要在双引号前加上_T才不会报错
      

  2.   

    二维数组可以这样赋值的,楼上说的都对,你输入的那些字符串确实需要每一个前面加上 _T,原因是这样,事先不知道系统定义的字符集是什么,是宽字符集还是多字符集,不加 _T 时为多字符集,而MFC通常默认定义系统为宽字符集(Unicode字符集),这样就会产生类型不匹配的错误。加上 _T(一个宏) 以后,系统自动为你选择字符串采用的字符集。
      

  3.   

    可以的,但是数据的编码格式是unicode的话得加上"L"
      

  4.   

    工程是Unicode的话编译不过,不管是不是Unicode,都应加_T().
      

  5.   

    呵呵,还真没这么使过CString啊。
      

  6.   


    Key与Value关系的话用map就行,若果允许Key重复用MultMap,这是动态的,封装好的STL
      

  7.   

    这样定义CString二维数组并赋值,是对的。