which和that都可指代物,有时候可以互换,有时却只能用其一:
一、只用that不能用which的情况:
(1)先行词被序数词或形容词最高级所修饰,或本身是序数词、基数词、形容词最高级时。
(2)被修饰的先行词为all/ any/ much/ many/ everything/ anything/ none/the one等不定代词时。
(3)先行词被the only/ the very/ the same/the last/ little/ few等词修饰时。
(4)先行词里同时含有人和物时。
(5)主句是there be结构。
二、只用which,而不用that的情况:
(1)先行词为that/ those时。
(2)关系代词前有介词时。
(3)引导非限制性定语从句。