Language agnostic 什么时候可以;创造;及;宣布;是同义词吗?

Language agnostic 什么时候可以;创造;及;宣布;是同义词吗?,language-agnostic,Language Agnostic,偶尔你会无意中发现一篇技术文章,其中“创建”和“声明”是同义词 例如 声明一个int数组 创建整数数组 但是声明和创建不是两件不同的事情吗?还是依赖于上下文?在C和C++中,< P>,对象的创建也声明: int main() { int a[10]; // create a a[3] = 42; // use a - no need for a separate declaration } 至少在某些情况下,这两者显然是分离的。例如,在C或C++中,有声明声明事物的声明

偶尔你会无意中发现一篇技术文章,其中“创建”和“声明”是同义词

例如

声明一个int数组

创建整数数组


但是声明和创建不是两件不同的事情吗?还是依赖于上下文?在C和C++中,

< P>,对象的创建也声明:

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

至少在某些情况下,这两者显然是分离的。例如,在C或C++中,有声明声明事物的声明,并且有声明和创建它们的定义,并且(只有C++)有<代码>新< /COD>表达式,它们创建对象而不声明它们(并且,可以说,在C中Maloc排序也一样)。 类似地,在支持lambda表达式的语言中,创建和声明是分开的——lambda表达式创建某些东西(例如,函数),但不(单独)声明它(将名称绑定到它)