我正在做一個程序,使兩個二進制數的總和。一切正常,所有工作,但我需要一些提示如何更快的算法。C++如何更快的算法 - 使用字符串
我在考慮將所有變量改爲動態分配的變量。 這是個好主意嗎?使所有變量都變爲動態的,即使我只使用一個或唯一的長字符串?
我需要關於如何使用動態分配變量的建議。
這就是比如我檢查功能之一:
bool Correct(string v1, string v2){
for (unsigned int i = 0; i < v1.size(); ++i) {
if ((cin.fail())||((v1[i] != '1')&&(v1[i] != '0')))
return false;
}
for (unsigned int i = 0; i < v2.size(); ++i) {
if ((cin.fail())||((v2[i] != '1')&&(v2[i] != '0')))
return false;
}
return true;
}
當我使用這個:
bool JsouVstupySpravne(string *v1, string *v2){...}
所有使用像v1.size()停止工作。
更多與你的問題有關的,只是說「停止工作」是沒有太大的繼續。 *它如何停止工作?如果你得到構建錯誤,那麼你應該在問題中包含完整和未編輯的構建日誌。如果發生崩潰,則使用調試器查找代碼中崩潰發生的位置。如果您得到意想不到的結果,請包括實際和預期結果。 –
這段代碼並沒有總結任何內容 – wvdz
爲什麼'cin.fail()'檢查?你什麼都不讀。如果您不修改字符串,請將它們作爲常量的引用(例如'const string&v1')。 –