代码之家  ›  专栏  ›  技术社区  ›  Cubbi

大括号init list对数组的赋值是否正确[[关闭]

  •  9
  • Cubbi  · 技术社区  · 14 年前

    括号内的init列表可能出现在
    -标量[…]的赋值
    -由用户定义的赋值运算符[…]定义的赋值

    #include <iostream>
    
    int main()
    {
            int test[] = {1,2,3};
            std::cout << test[0] << test[1] << test[2];
            test = {4,5,6};
            std::cout << test[0] << test[1] << test[2] << std::endl;
    }
    

    它会打印出来 123456 . GCC在这里正确吗?

    1 回复  |  直到 12 年前
        1
  •  4
  •   Jerry Coffin    14 年前

    在我看来它像个虫子。初始化( int test = {1,2,3}; )很好,但据我所知,标准中没有允许分配。