想象一下用 Java 或 C++ 编程。你有一个文件,大约有 5000 行纯代码。每次您键入一个字母并暂停片刻(想想 Eclipse 或 Visual C++)时,IDE 将在整个文件中显示一堆错误(或者可能只显示同一行,具体取决于编辑器)。我想知道的是,IDE如何做到这一点?我只能想象,每次键入字母时读取整个文本文件的 IDE 效率会非常低,并且当有人输入一定数量的字符时可能会开始真正快速减速。
我不是在寻找一个完整的算法解决方案或类似的东西。我正在寻找一个非常简单的编辑器来娱乐,我想知道我应该如何整合文件的整个扫描。即使我想为关键字(this、class、static、extern、transient、public、private、protected 等)设置不同的颜色,我也必须能够知道我应该如何实现这个扫描“算法” .