改成:char static Data[1024];
错误依旧:error C2040: 'public: static char *  a::Data' : 'char' differs in levels of indirection from 'char [1]'

解决方案 »

  1.   

    改成:char static Data[1];
    错误依旧:error C2040: 'public: static char *  a::Data' : 'char' differs in levels of indirection from 'char [1]'
      

  2.   

    static char Data[1024];
    ...
    char a::Data[0]='1';
      

  3.   

    错误变成了:error C2466: cannot allocate an array of constant size 0
    error C2440: 'initializing' : cannot convert from 'const char' to 'char [1024]'
            There are no conversions to array types, although there are conversions to references or pointers to arrays
      

  4.   

    Data改成:char static Data[1];
    初始化语句改成:char a::Data={'1'};
    错误依旧为error C2040: 'public: static char *  a::Data' : 'char' differs in levels of indirection from 'char [2]'
    !!!???
      
      

  5.   

    char static Data[1024];//wrong
    static char data[1024];//right
      

  6.   

    改成static char data[1024];//right 
    问题依旧!?
      

  7.   

    static char Data[1024];
    ...
    char a::Data[1024]={'1'};
      

  8.   

    a.cpp的内容:#include "a.h"
    char a::Data={"1"};a.h的内容:class a
    {
    static char Data[1024];
    };
    工程中就这两个文件!错误:error C2040: 'private: static char *  a::Data' : 'char' differs in levels of indirection from 'char [1024]'
      

  9.   

    To: timefg() “你在构造函数里面付值就没有问题了”
    可我这个是静态变量,省不了初始化这一步的,而我恰是在初始化时出的错。
    我也同意你说的“在构造函数里面付值就没有问题了”不过现在是在解决静态变量的初始化问题,还没到调构造函数那一步呢!
      

  10.   

    #include <iostream.h>
    class a
    {
    static char Data[1024];
    };char a::Data[1024]={'1'};main()
    {
     a b; }没错误,我编译通过。