相关疑难解决方法(0)

我怎么能在C++中声明一个在运行时确定的变量长度的数组?

请检查这个代码,它编译并运行绝对正常..问题是,当我开始学习c ++(turbo c ++)时,我从来没有能够声明任何类型的数组作为..

datatype var[variable_set_at_runtime];
Run Code Online (Sandbox Code Playgroud)

我理所当然地认为这在最新的gcc编译器中是不可能的......但令人惊讶的是这可能......

所以我的相关问题是,那么新运营商的需求是什么?

我知道new运算符可以执行很多操作,包括在堆中运行时动态分配内存,将地址返回给该资源......等等.

我觉得有什么不同,我的代码动态地在堆栈上分配内存,而新的代码在堆上运行?这是唯一的区别......

写完这样的东西后,我真的很惊讶,因为当我开始学习c ++时,我无法做到这一点......为了添加它,我也能为自定义数据类型做到这一点......: - O

#include<iostream>
using namespace std;
struct A
{
    int a;
    int b;
};
int main()
{
    int a;
    cin>>a;
    int ch[a];
    for(int i=0;i<a;i++)
        ch[i]=i+1;
    for(int i=0;i<a;i++)
        cout<<"\n\nch=="<<ch[i];
    A obj[a];
    cin>>obj[a-1].a;
    cin>>obj[a-1].b;
    cout<<"\n\n obj.a,obj.b=="<<obj[a-1].a<<" , "<<obj[a-1].b;
}
Run Code Online (Sandbox Code Playgroud)

请说清楚..

谢谢.

c++ new-operator

2
推荐指数
1
解决办法
679
查看次数

标签 统计

c++ ×1

new-operator ×1