我在理解本声明方面存在问题。我不知道为什么这和其他人不一样。为什么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