何时可以同义地使用“创建”和“声明”?

时间:2010-03-22 11:24:50

标签: language-agnostic

有一段时间,你偶然发现一篇技术文章,其中“创建”和“声明”同义使用。

E.g。

  

声明一个int数组

     

创建一个int数组

但是没有声明和创造两件不同的东西?或者它取决于背景?

2 个答案:

答案 0 :(得分:2)

这两者显然是分开的,至少在某些情况下是这样。例如,在C或C ++中,有声明只声明事物,并且有声明创建它们的定义,并且(仅在C ++中)有new个表达式在没有声明它们的情况下创建对象(并且可以说,在C语言中,malloc类型也是如此)。

同样,在支持lambda表达式的语言中,创建和声明是分开的 - 一个lambda表达式创建一些东西(例如,一个函数)但不(通过它自己)声明它(将名称绑定到它)。 / p>

答案 1 :(得分:0)

在C和C ++中,对象的创建也声明了它:

int main() {
    int a[10];   // create a
    a[3] = 42;   // use a - no need for a separate declaration
}