【发布时间】:2020-10-12 01:35:09
【问题描述】:
现在我正在学习 C++ 编程。我不明白表达式、定义、声明和定义之间的区别。
正如维基百科所说,
在“声明(计算机科学)”中
在大多数语言中,语句与表达式的不同之处在于语句不返回结果并且仅因其副作用而执行,而表达式总是返回结果并且通常根本没有副作用。
在“表达式(计算机科学)”页面中
在许多编程语言中,函数以及包含函数的表达式可能会产生副作用。具有副作用的表达式通常不具有引用透明性的属性。在许多语言(例如 C++)中,表达式可能以分号 (;) 结尾,以将表达式转换为表达式语句。这要求实现仅评估表达式的副作用并忽略表达式的结果(例如“x+1;”),除非它是引起副作用的表达式语句的一部分(例如“y= x+1;" 或 "func1(func2());")。 注意事项
具体来说,这里的“副作用”和“结果”是什么意思?
帮助我,C++ 极客!
【问题讨论】:
-
与其阅读维基百科与语言无关的文章,不如阅读book about c++。
-
维基百科没有编辑认为的一半好,而且这两页很糟糕。买一本像样的书。
标签: c++ expression computer-science declaration definition