我正在嘗試編寫一個處理非常長的消息(它處理聊天系統)的套接字系統。我正在嘗試使用const int來初始化一個數組,這個數組是可以編譯的,但我被警告ISO C++禁止它。有人可以看到這種情況嗎? (這是爲了避免寫一個字節剩餘的多接收系統(我已經有了,但是我覺得這會更有效率))。下面是一個如何使用它的例子。C++變量數組
const int BUFFERLEN = atoi(api_GETVALUE(1,inbuffer).c_str()); //that is my API call
if(BUFFERLEN != -1) { //it returns "-1" on error
char INBUFFER[BUFFERLEN];
recv(SOCK,INBUFFER,sizeof(INBUFFER),0);
}
這樣做可以接受嗎?還是應該堅持使用multi-recieve-until-done方法?
謝謝, 科林
要麼做多個較小的接收,要麼動態分配緩衝區。 –