只能初始化
int a[3] = {1,2,3}; // 正确
不能赋值
int a[3];
a = {1,2,3};   // 错误

解决方案 »

  1.   


    point[0][0]=1;
    point[0][1]=2;
      

  2.   

    point[6][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3},{1,2,3},{1,2,3}};不行?
      

  3.   

    public:
        float point[6][3];
    如果在类中这样定义的话,不能像
    point[6][3]={{},{},{},{},{},{}};
    赋初值
    还是写个循环语句赋吧
      

  4.   

    point[0][0]=1;
    point[0][1]=2;像这样赋值是可以,但是所需数据很多,这样太麻烦。Stefine所说的那样不行。如何用循环语句?每个值都不同。是不是我定义的不对,如何在VC中定义数组呢?
      

  5.   

    void OpenGL::OpenGL()
    这个不是构造函数,构造函数没有返回值,返回void错误。
      

  6.   

    还需要回答吗?在程序里,point[6][3]不代表整个数组,只代表一个单元;只有在定义的时候才可以顺便赋值。你把初始化和赋值搞混淆了。
      

  7.   

    构造函数中初始化
    用两个for语句
    或者就是定义时初始化
      

  8.   

    这个不矛盾 C中和VC中定义时初始化都 可以   ,你这样在VC中类中定义二维数组,而在构造函数中初始化就不对了,编译不会通过  因为point[6][3]它会认为成一个变量.
    解决方法:
    1 point[6][3]不多,分开写不就行了  point[0][0]=1....呵呵
    2 别把数组定义成成员变量 定义成全局变量在定义时像你那样初始化就可以了
    3 可以定义point[6][3]为类成员变量 完后在初始化时 定义个指针指向它 完后用指针赋值 不过这样没什么实际意义 画蛇添足了也许有更好的办法 学习中...