c⼀c++ 什么时候支持用变量定义数组大小的

2024-11-23 08:06:18
推荐回答(1个)
回答1:

不大可能吧!加入这东西对C++的底层实现和类型系统影响都很大,而且实现这个东西开销不小!


看看下面的代码:

#include 

template 
void Func(  int ( & array )[N] ) {
}

int main() {
    int a = 0;
    std::cin >> a;
    int array[a]; // array的类型是什么?  int[a] ?
    Func( array ); // 模板Func如何实例化?
    
    std::cout << sizeof( array ) << std::endl; // sizeof现在不能在编译时求值!ar                                               // ray的长度编译时无法确定!!
    return 0;
}

C++里面想用动态的数组,完全可以使用std::vector。