我試圖推回const char*
在forloop向量中。 char_temp
是一個名爲segment
的結構,而chars_temp
是一個結構向量。見下面我的代碼:push_back const char *
for (int bg = 0; bg < str.size(); bg++) {
string sym(1, str[bg]);
const char* bg_cc;
bg_cc = sym.c_str();
char_temp.symbol_first = bg_cc;
char_temp.symbol_second = "*";
chars_temp.push_back(char_temp);
}
的問題是,推背字符是一個指針,所以char_temp.symbol_first
由同一地址。該結構需要const char*
爲char_temp.symbol_first
,那麼我怎樣才能用forloop中的不同地址填充這個向量?
我試着const char* bg_cc = new char
在forloop,但bg_cc
保持有相同的地址。
在此先感謝!
它通過複製char來工作。非常感謝! – Rogier
@Rogier沒問題。 –