2014-05-18 52 views
0

好吧,我正在嘗試使用一個程序的龐然大物,並且我已經排序了大量的錯誤。一個是一個的,現在神祕的我是當我得到了這條線「從‘字符’到‘爲const char’無效轉換」:使用插入函數從char到const char的轉換無效從<string>

sequenceMutation.insert(initialPosition, 'T'); 

initialPosition本身,就是要等於sequenceIleChains[0] + 3,對應於指數第一個異亮氨酸組的最後一個字符(加上一個以說明insert的行爲)。我不知道爲什麼它會輸出這個數據,考慮到我在函數中初始化並聲明瞭string sequenceMutation而沒有const,所以如果任何人都能弄明白這一點,那將是有用的。

此外,如果它可以幫助,我用

string sequenceMutation = sequenceOld[sequence]; 

初始化和申報sequenceMutation,其中sequenceOld是,我通過使用vector<string>& sequenceOld和序列參考向量是一個整數值我初始化,聲明,通從int main()的for循環中我將這個函數放在裏面。

+0

什麼'initialPosition'的類型?從它的聲音來看,這是一個不可或缺的價值。如果是這樣,'std :: basic_string'中的'insert()'不會有重載,它會帶一個整數和一個'char'。也許你的意思是'sequenceMutation.insert(initialPosition,1,'T')'。 –

回答

2

更換'通過",要插入一個字符串,而不是一個char,看到http://www.cplusplus.com/reference/string/string/insert/

+0

謝謝你是一位救生員。然而,當我聲明這個函數時,爲什麼我會從'char'轉換爲'int'的問題 'void printMutation(const vector &,const vector < vector>&,int,ofstream &);' – JbstormburstADV

+0

你在哪裏得到錯誤?當你調用函數時,請發佈代碼和變量的類型,因爲通過查看函數原型我們無法弄清楚發生了什麼。 – vsoftco

+0

好吧,我已經將整個程序放在代碼中在這裏:https://coderpad.io/720710。我寫的每個文件都以開始和結束註釋爲邊界,並且在底部添加了編譯器的錯誤文本,註釋表示coderpad模擬中的行位置函數的行 – JbstormburstADV

相關問題