编程实践(一些令人困惑的陈述)

Jay*_*ram 6 java arrays search

前几天我正在阅读Kernighan和Rob Pike 的编程实践.

在第二章中,在" 搜索"部分,我阅读了一些在我脑海中造成混淆的行.

"没有什么比用于存储静态表格数据的数组更好.编译时初始化使得构造这样的数组变得便宜和容易.(在Java中,初始化发生在运行时,但这是一个不重要的实现细节,除非数组很大. )"

我的问题是,如果用户只在运行时提供数组或变量,并且变量的内存分配在运行时进行,那么在任何语言中如何编译时都可以进行数组或变量的初始化.不知道内存地址如何初始化数组?

Thi*_*ilo 1

它没有说数据是在运行时提供的。它只是说“静态”数据。如果在编译时已知,则编译器可以将其直接编译到代码中。API 密钥、带有“幻数”的表格或错误消息文本都适合该模式。