我在理解本聲明方面存在問題。我不知道爲什麼這和其他人不一樣。爲什麼const char INITIAL ='G'不是賦值語句?
回答
賦值意味着給已經存在的對象賦予新的值。即使const char INITIAL='G';
有一個=號,它是而不是一個賦值,因爲它是創建一個新的對象,不修改現有的一個。 char INITIAL; INITIAL='G';
將是一項任務,因爲INITIAL
已經存在,當新值很好地分配。
感謝:) :) –
const char INITIAL ='G' 這裏這個聲明實際上創建INITIAL變量,然後把G放入它。所以這個變量已經存在了。只是一個想法。 –
我的概念所說的是每當有一個=表示它的任務。
你的概念錯了。這是一個初始化聲明。這與說:
const char INITIAL('G');
我的意思是分配不是初始化。 –
正如我所說,這不是一項任務。 –
lol你的意思是const char INITIAL ='G';是一個初始化語句而不是賦值。你認爲它被要求達到這個目的? –
- 1. 什麼是char * const *?
- 2. C++ const char *指針賦值
- 3. 爲什麼MFC C++ CString(const char *)完全改變const char *值?
- 4. 不兼容類型的const char *賦值爲char
- 5. NSString爲char(不是const char)
- 6. 什麼是char * const argv []?
- 7. 爲什麼const char * foo =「Hello」;編譯但不是const int * foo = 5;?
- 8. 爲什麼std :: runtime_error :: what()返回const char *而不是std :: string const&
- 9. 爲什麼cStringUsingEncoding:返回const char *而不是char *?
- 10. 爲什麼不strlen的(..)預計爲const char * const的海峽,而不是爲const char *
- 11. 爲什麼`std :: string`的賦值運算符是按值而不是`const`引用`char`的?
- 12. 爲什麼這個簡單的賦值語句不工作(vba)?
- 13. 賦值語句值
- 14. ALTER語句:爲什麼VARCHAR2(50 BYTE)而不是VARCHAR2(50 CHAR)?
- 15. C++:爲什麼我們不能將char **轉換爲const char **
- 16. 爲什麼`execvp`採用`char * const argv []`?
- 17. 爲什麼我不能在C中將'char **'轉換爲'const char * const *'?
- 18. C++爲const char *爲const char * const的
- 19. 不能將'const char *'轉換爲'char * const *'
- 20. 爲什麼在UPDATE語句中賦值變量不是事務性的?
- 21. 爲什麼這段代碼從'char'錯誤獲得'char *'賦值?
- 22. 將常量參數的const char *成員賦值爲新值
- 23. C++爲什麼const LPSTR與const char *不同?
- 24. static const char * const和static const char []之間有什麼區別?
- 25. 什麼是成員數據指針的正確賦值語句
- 26. 在帶賦值原因的條件語句中,false!==是什麼?
- 27. (const char * restrict,...)是什麼意思?
- 28. 「const char(&a)[N]」是什麼意思?
- 29. 爲什麼在這個Verilog函數中沒有賦值語句?
- 30. 寬鬆擲符爲 '虛擬爲const char * ro_err :: STDERR ::什麼()const的'
related/dupe:http://stackoverflow.com/questions/4470553/initialization-parenthesis-vs-equals-sign – NathanOliver
隨着編輯,問題不再有意義。 「在理解這個聲明。」哪種說法?你沒有收錄它。 – Borgleader
http://en.cppreference.com/w/cpp/language/copy_initialization – 0x5453