簡體   English   中英

錯誤:使用不同類型重新定義“var”:“char”與“string”(又名“basic_string”) <char, char_traits<char> , 分配器<char> &gt;&#39;)

[英]error: redefinition of 'var' with a different type: 'char' vs 'string' (aka 'basic_string<char, char_traits<char>, allocator<char> >')

void allocateChar(string type, string var, int length, char initToChar){
    char *Thingy = (char*)myMalloc(length);
    char var = initToChar;
    my_free(Thingy);

}

我在 char var = initToChar 上遇到錯誤,我不知道為什么我會得到它,因為根據我在 Google 上看到的內容,發生此錯誤是因為將 2 個不同的事物命名為同一事物。 但是,我不相信我會這樣做,因為我將用戶輸入的任何名稱作為字符串,然后將其設置為字符的名稱。

你說:

......但是,我不相信我在這樣做......

那不是真的,你是。 您正在同一范圍內創建兩個具有相同名稱的不同變量。 這是不允許的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

相關問題 沒有從“value_type”(又名“char”)到“string”(又名“basic_string”)的可行轉換<char, char_traits<char> , 分配器<char> &gt;&#39;) ostream和運算符std :: basic_string <char, std::char_traits<char> ,std :: allocator <char> &gt;? main.cpp || 未定義對`MyClass :: loadDatas(std :: basic_string的引用 <char, std::char_traits<char> ,std :: allocator <char> &gt;)&#39;| 未定義對`librarymanager :: getBook(std :: basic_string的引用 <char, std::char_traits<char> ,std :: allocator <char> &gt;) 1 IntelliSense:沒有合適的構造函數可以從“bool”轉換為“std :: basic_string” <char, std::char_traits<char> ,std :: allocator <char> &gt;” 未定義對`readVector(std :: __ cxx11 :: basic_string的引用) <char, std::char_traits<char> ,std :: allocator <char> &gt;)” “ str2Int(std :: basic_string <char, std::char_traits<char> ,std :: allocator <char> &gt; const&)”,引用自: 未定義模板 &#39;std::basic_string 的隱式實例化<char, std::char_traits<char> , 標准::分配器<char> &gt;&#39; 二進制表達式的無效操作數('basic_ostream <char, std::char_traits<char> &gt;' 和 '向量<std::string> '(又名'向量<basic_string<char> &gt;')) </basic_string<char></std::string></char,> C++ std::basic_string/char_traits 特化
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM