数组索引2在数组的末尾

问题描述 投票:0回答:1

字符串数组d [2]应该包含3个元素。但似乎只能包含2个元素。第三个元素未存储在数组中。是什么原因?它与我用new运算符完成的内存分配有关系吗?

#include<iostream>

class A
{
public:
    A()
    {   
        std::string d[2];
        d[0] = "Dilshdur";
        d[1] = "Dilshad";
        d[2] = "Dolon";
        for(int i=0; i<3; i++)
        {
            std::cout<<d[i]<<std::endl;
        }

    }


};


int main()
{
   A *p;
   p = new A;
   return 0;
}

字符串数组d [2]应该包含3个元素。但似乎只能包含2个元素。第三个元素未存储在数组中。是什么原因?它和...

c++11 dynamic-memory-allocation
1个回答
1
投票

在阅读或学习数组时,似乎有些遗漏,因为定义数组时提供的大小是元素数,而不是顶部索引。

© www.soinside.com 2019 - 2024. All rights reserved.