21.13 带to 的情态动词
  带to 的情态动词有四个:ought to, have to, used to, be to, 如加上have got to ,(=must), be able to,为六个。它们的疑问,否定形式应予以注意:
  Do they have to pay their bill before the end of the month?
  She didn't use to play tennis before she was fourteen.
  You ought not to have told her all about it.
  Ought he to see a heart specialist at once.?

  ought to 本身作为情态动词使用。其他的词作为实义动词使用,变疑问,否定时,须有do 等助动词协助。

 Tom ought not to ___ me your secret, but he meant no harm. 
 A.have told B.tell C.be telling D. having told
 答案A。由于后句为过去时,告诉秘密的动作又发生在其前因,此地应用过去完成时,但它在情态动词 ought to 后,所以用have。