面向对象的编程思想主要包括以下哪些原则( )?
C++类:构造函数(对象创建时调用)、析构函数(对象销毁时调用)、虚函数(实现多态)。构造函数不能为虚。
构造函数不能是虚函数(虚表在构造函数完成后才建立)。析构函数可以且通常应该为虚函数(防止内存泄漏)。
【考点】面向对象编程原则|封装、继承、多态
1. 🎯 考纲定位 本题考查《GESP C++ 考试大纲》六级"面向对象程序设计"模块中的三大核心原则。命题人专门挖坑,用贪心、动态规划等算法术语干扰,卡住那些只背算法名词、没真正理解类与对象关系的考生。六级大纲明确要求掌握三大原则,但很多学生把"编程概念"和"算法思想"混为一谈。
2. 🧠 解题思维 看到"面向对象原则"四个字,立刻触发知识库:封装(隐藏内部细节)、继承(类之间的复用)、多态(接口统一,实现各异)。排除法秒杀:A/B/C全是算法思想,只有D是类与对象的底层设计哲学。如果题目改成"下列哪项是面向过程编程",答案就会完全不同。
3. 🪤 陷阱拆解 错误选项全是算法术语:贪心、动态规划、回溯是解题策略,并发、递归、循环是控制流,它们与"类的设计哲学"风马牛不相及。命题人狡猾之处在于把"编程概念"偷换成"算法思想",如果你脑子里只有"C++里有哪些算法",就会误选A或C。多态常被误认为"重载",但选项只要求识别原则名称,不需要深入语义。
4. 🔄 反命题思维 如果改成"下列哪项不属于面向对象原则",答案就会变成"递归"或"贪心"。刷到"编程思想/原则"类题,先问自己:它考的是算法技巧,还是类的设计哲学?前者背公式,后者背定义。