C++题库

这篇具有很好参考价值的文章主要介绍了C++题库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、面向对象的三大特征分别为( 继承 )、( 多态 )和( 封装 )。

2、类中成员的访问方式有( public )、( private )和( protected ),默认的访问方式为( private )。

3、类中的析构函数有( 1 )个。

4、类的拷贝构造函数的参数为( const 类名 &名字 )。

1、C++中用( inline )替代C中带参的宏,用( const )替换不带参的宏。

4、( 引用 )是变量的别名。

1、函数重载,函数名相同,参数不同,参数不同体现在参数的(类型)、( 顺序 )或( 个数 )不同。

2、C++进行输入输出操作时,必须包含头文件(iostream)。

3、类的成员函数中隐藏着一个参数即(this )。

4、静态成员函数的主要作用是用来访问类的(静态数据成员)。

1、下列函数重载不正确的是( B )。
A、int p(int);和 void p(double);
B、int d(int t);和 char *d(int y);
C、int s(int x,char *t); 和 int s(char *t,int x);
D、int v(int x,int y);和 int v(int);

2、公有派生类中的成员函数可以访问基类中的(非私有)成员,公有派生类对象可以访问基类中的( 公有 )成员。

3、含有对象成员的派生类,析构函数调用顺序为( 派生类,对象成员, 一般基类, 虚基类 )。

4、含有对象成员的派生类,构造函数调用顺序为(虚基类,一般基类,对象成员,派生类 )。

1、C++中不能重载的运算符为( . .* sizeof :: ?: )。

2、判断下面关于友元的说法正确性。
友元类之间的友元关系具有对称性。F
友元类之间的友元关系具有传递性。F
友元函数可以访问类的私有成员。T
友元函数必须声明在类的内部。T

3、类的构造函数必须为(public )函数。填(public、private 或protected)

4、包含( 纯虚函数 )的类为抽象类。

1、写出下面程序的运行结果。
#include
using namespace std;
int s(int x,int &y)
{
x+=y;
y+=x;
return y;
}
int main()
{
int a=3,b=4;
s(a,b);
s(b,a);
cout<<a<<“,”<<b<<endl;
return 0;
} //17,11

2、f是类的一个常成员函数,无参数,无返回值,则其在类中的声明为( void f() const; )。

3、template , 则T的类型为( 任意类型 )。

4、若运算符+采用成员函数重载,则a+b的函数调用格式为( a.operator(b) )。

1、若运算符+采用友元函数重载,则a+b的函数调用格式为( operator+(a,b) )。

2、只能通过友元函数重载的运算符为( >> << )。

3、常数据成员的初始化操作应该在( 初始化表 )处进行。

4、下列语言不是面向对象程序设计语言的是( C )。
C C++ Java Phthon

1、类S中包含常数据成员a,试写成对a初始化语句( S::S():a(10){} )。

2、用new运算符创建一个包含10个元素数组的语句为( *int p=new int[10]; )。

3、引入友元的作用为( 提高程序的运行效率和灵活性 )。

4、类的析构函数带有( 0 )个参数。

1、#include
using namespace std;
class A
{
public:
A(){cout<<“AA”; }
~A(){cout<<“DA”; }
};
class B
{
A a;
public:
B(){cout<<“BB”; }
~B(){cout<<“DB”; }
};
int main()
{
B b;
cout<<“CC”;
return 0;
} //AABBCCDBDA

2、C++源程序后缀(即扩展名)为( .cpp )。

3、判断正误 符号常量定义时必须进行初始化。T

4、派生类的成员函数可以访问基类中的( 非私有 public 或protected )成员。填访问类别

已知一个复数类设计如下:

class comp
{
	double real,imag;
public:
	comp(double r=0,double i=0);
	comp operator+(const comp &t);
	friend ostream &operator<<(ostream &out,const comp &t);	
};

试实现类中的函数并在main函数中进行测试。

代码编写如下文章来源地址https://www.toymoban.com/news/detail-488349.html

#include<iostream>
using namespace std;
class comp {
	double real, imag;
public:
	comp(double r = 0, double i = 0);
	comp operator+(const comp& t);
	friend ostream& operator<<(ostream& out, const comp& t);
};
comp::comp(double r, double i) {
	real = r; imag = i;
}
comp comp::operator+(const comp& t) {
	comp result;
	result.real = real + t.real;
	result.imag = imag + t.imag;
	return result;
}
ostream& operator<<(ostream& out, const comp& t) {
	out << t.real << " + " << t.imag << " i";
	return out;
}
int main() {
	comp c1(10, 17328);
	comp c2(5, 2342);
	comp c3;

	cout << "c1 + c2 =" << c1 + c2;

	return 0;
}

已知一个复数类设计如下:

class comp
{
	double real,imag;
public:
	comp(double r=0,double i=0);
	bool operator>(const comp &t);//比较到原点的距离
	friend ostream &operator<<(ostream &out,const comp &t);	
};

试实现类中的函数并在main函数中进行测试。

代码编写如下

#include<iostream>
using namespace std;
class comp {
	double real, imag;
public:
	comp(double r = 0, double i = 0);
	bool  operator>(const comp& c);
	friend ostream& operator<<(ostream& out, const comp& t);
};
comp::comp(double r, double i) {
	real = r; imag = i;
}
bool comp::operator>(const comp& t) {
	if ((real*real+imag*imag>t.real*t.real+t.imag*t.imag)||((real * real + imag * imag == t.real * t.real + t.imag * t.imag)&& real>t.real)) {
		return true;
	}
	else {
		return false;
	}
}
ostream& operator<<(ostream& out, const comp& t) {
	out << t.real << " + " << t.imag <<" i";
	return out;
}
int main() {
	comp c1(10, 17328);
	comp c2(5, 2342);
	
	cout << "c1 : " << c1 << endl;
	cout << "c2 : " << c2 << endl;

	if (c1 > c2) {
		cout << "c1 > c2 " << endl;
	}
	else {
		cout << "c1 <= c2" << endl;
	}
	return 0;
}

1、定义一个学生类stu,包含私有成员 年龄和姓名,接口有:构造函数,修改年龄的函数(年龄增加一岁)。在main函数中对stu类进行测试。

代码编写如下

#include<iostream>
#include<string.h>
using namespace std;
class Student {
private:
	int age;
	string name;
public:
	Student() { name = "NoName"; age = 0; }
	Student(int a, string n) { name = n; age = a; }
	//可以简写为Student(int a = 0; string n = " NoName"){name = n ; age = a;}
	void AddAge();
	void Print();
};
void Student::AddAge() {
	age++;
}
void Student::Print() {
	cout << name << "今年" << age << "岁了" << endl;
}
int main() {
	Student s1(18, "张三");
	for (int i = 0; i < 100; i++) {
		s1.Print();
		s1.AddAge();
	}
	return 0;
}

到了这里,关于C++题库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++ 面向对象三大特性——多态

    ✅1主页:我的代码爱吃辣 📃2知识讲解:C++ 继承 ☂️3开发环境:Visual Studio 2022 💬4前言:面向对象三大特性的,封装,继承,多态,今天我们研究研究 C++的多态 。 目录 一.多态的概念 二.多态的定义及实现 1.多态的构成条件 2. 虚函数 3.虚函数的重写 4. C++11 override 和 fina

    2024年02月12日
    浏览(60)
  • C++ 面向对象三大特性——继承

    ✅1主页:我的代码爱吃辣 📃2知识讲解:C++ 继承 ☂️3开发环境:Visual Studio 2022 💬4前言:面向对象三大特性的,封装,继承,多态,今天我们研究研究 C++的继承 。 目录 一.继承的概念及定义 1.继承的概念  2.继承的定义 二. 继承关系和访问限定符  三.基类和派生类对象赋

    2024年02月12日
    浏览(66)
  • c++面向对象之封装、继承、和多态

    把客观事物封装成类,而且可以把自己的数据和方法设置为只能让可信的类或者对象操作,对不可信的信息进行隐藏(利用public,private,protected,friend)实现 has-a :描述一个类由多个部件类构成,一个类的成员属性是另一个已经定义好的类。 use-a:一个类使用另一个类,通过类之间

    2024年02月02日
    浏览(48)
  • C++核心编程—类和对象,类的三大特性——封装、继承、多态

    纵有疾风起,人生不言弃。本文篇幅较长,如有错误请不吝赐教,感谢支持。 ①什么是对象? 生活中有各种各样的 事物 ,如人、动物、植物等在C++中将这些称为对象。 对象多种多样, 各种对象的属性也不相同 。 例如狗的品种,毛色,年龄等 各个对象都有自己的行为 ,例

    2024年02月07日
    浏览(62)
  • 面向对象的三大特性之继承(C++)

    概念   继承机制是面向对象编编程使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称为派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。继承是类设计层次的复用。 定

    2024年02月06日
    浏览(49)
  • C++ 面向对象核心(继承、权限、多态、抽象类)

    继承(Inheritance)是面向对象编程中的一个重要概念,它允许一个类(称为派生类或子类)从另一个类(称为基类或父类)继承属性和方法。继承是实现类之间的关系,通过继承,子类可以重用父类的代码,并且可以在此基础上添加新的功能或修改已有的功能。 在C++中,继承

    2024年02月08日
    浏览(45)
  • c、c++、java、python、js对比【面向对象、过程;解释、编译语言;封装、继承、多态】

    目录 内存管理、适用 区别 C 手动内存管理:C语言没有内置的安全检查机制,容易出现内存泄漏、缓冲区溢出等安全问题。 适用于系统级编程 C++ 手动内存管理:C++需要程序员手动管理内存,包括分配和释放内存,这可能导致内存泄漏和指针错误。 适用于游戏引擎和系统级编

    2024年02月08日
    浏览(73)
  • 【面向对象语言三大特性之 “多态”】

    目录  1. 多态的概念 1.1 概念 2. 多态的定义及实现 2.1多态的构成条件 2.2 虚函数  2.3虚函数的重写 2.4 C++11 override 和 final  2.5 重载、覆盖(重写)、隐藏(重定义)的对比  3. 抽象类 3.1 概念 3.2 接口继承和实现继承  4.多态的原理 4.1虚函数表  4.2多态的原理 4.3 动态绑定与静态绑定

    2023年04月17日
    浏览(97)
  • 图书管理借阅系统【Java简易版】Java三大特征封装,继承,多态的综合运用

    前言 前几篇文章讲到了Java的基本语法规则,今天我们就用前面学到的数组,类和对象,封装,继承,多态,抽象类,接口等做一个图书管理借阅系统。 Java语言是面向对象的,所以首先要分析完成这个图书管理系统,有哪些对象: 👱使用者User 📘书Book 📲操作Operation 使用者

    2024年02月14日
    浏览(41)
  • 【java】面向对象三大特性之多态

            俗话说的好,“一龙生九子,九子各不同”,这句话就蕴含了面向对象三大特性之一的多态的思想。那么多态具体有什么特点呢,就由博主来带大家梳理一下吧🤔 目录 一、什么是多态 二、重写 三、向上转型和向下转型 1、向上转型 2、向下转型 四、多态的优缺点

    2024年03月15日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包