void MyStr:: Set(int _len){
char ch[_len];
cin>>ch;
error C2057: 應輸入常量表達式
1>d:\c++編程\vs2008\projects\實驗九\實驗九\mystr.cpp(43) : error C2466: 不能分配常量大小為 0 的數組
1>d:\c++編程\vs2008\projects\實驗九\實驗九\mystr.cpp(43) : error C2133: “ch”: 未知的大小
在dev上編譯沒有問題,在vs上不行,求大神告知原因
因為dev使用的是GCC編譯器,該編譯器是允許使用變長數組的
而VS裡的編譯器是不允許變長數組的,數組的長度必須是個常量,可以使用new或者malloc來替代
PS:使用變長數組也要小心,有不少坑