所以我試圖超載>>
運算符,但在這種情況下,我得到一個空終止的字符串英寸我如何讓用戶只輸入足夠的字符,我動態分配char[]
命名數據和分配它。我知道有一種方法可以讓我製作一個尺寸非常大的臨時char[]
,並使用for循環來複制它們,但是我希望不會製作很大的char[]
。我有這樣的代碼,但現在我知道被通過,因爲可以在我的班級長度這是行不通的。重載>>使用istream
std::istream & operator>>(std::istream & is, String346 & objIn) {
using std::istream;
is >> objIn.data;
return is;
}
您可以一次獲取一個字符,並在存儲之前檢查是否有足夠的空間 –