注意:此页面搜索的是所有试题
河南财经大学数据库基础与应用
对类中声明的变量,下列描述中正确的是( )
A.属于全局变量
B.只属于该类
C.属于该类,某些情况下也可被该类不同实例所共享
D.任何情况下都可被该类所有实例共享
如没有使用private关键字定义类的数据成员,则默认为( )
A.private
B.public
C.protected
D.friend
类的私有成员可在何处访问( )
A.通过子类的对象访问
B.本类及子类的成员函数中
C.通过该类对象访问
D.本类的成员函数中
下列描述错误的是( )
A.在创建对象前,静态成员不存在
B.静态成员是类的成员
C.静态成员不能是虚函数
D.静态成员函数不能直接访问非静态成员
通常情况下,函数模板中的类型参数个数不能是( )
A.0
B.2
C.4
D.3
下列关于析构函数描述正确的是( )
A.可以重载
B.函数体中必须有delete语句
C.返回类型必须是void类型
D.不能指定返回类型
下面叙述不正确的是( )
A.派生类一般都用公有派生
B.对基类成员的访问必须是无二义性的
C.赋值兼容规则也适用于多重继承的组合
D.基类的公有成员在派生类中仍然是公有的
当一个类的某个函数被说明为virtual时,该函数在该类的所有派生类中( )
A.都是虚函数
B.只有被重新说明时才是虚函数
C.只有被重新说明为virtual时才是虚函数
D.都不是虚函数
在C++中实现封装是借助于( )
A.枚举
B.类
C.数组
D.函数
所有在函数中定义的变量,都是( )
A.全局变量
B.局部变量
C.静态变量
D.寄存器变量
在下列成对的表达式中,运算符“+”的意义不相同的一对是( )
A.5.0+2.0和5.0+2
B.5.0+2.0和5+2.0
C.5.0+2.0和5+2
D.5+2.0和5.0+2
要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为( )
A.const char *p=“ABCD”;
B.char const *p=“ABCD”;
C.char *const p=“ABCD”;
D.const char * const p=“ABCD”;
给出下面程序的输出结果
#include<iostream>
using namespace std;
class Simple
{
int x,y;
public:
Simple(){x=y=0;}
Simple(int i,int j){x=i;y=j;}
void copy(Simple&s);
void setxy(int i,int j){x=i;y=j;}
void print(){cout<<"x="<<x<<",y="<<y<<endl;}
};
void Simple::copy(Simple&s)
{
x=s.x;y=s.y;
}
void func(Simple s1,Simple&s2)
{
s1.setxy(30,40);
s2.setxy(70,80);
}
void main()
{
Simple obj1(1,2),obj2;
obj2.copy(obj1);
func(obj1,obj2);
obj1.print();
obj2.print();
}
下面程序的运行结果如下:
B::display()
C::display()
在下划线处填上缺少的部分。源程序如下:
#include<iostream>
using namespace std;
class B
{
public:
_______display( ) {cout << "B::display( ) "<<endl;}
};
class C:public B
{
public:
void display(){cout<<"C::display()"<<endl;}
};
void fun(B*p)
{
p->display();
}
void main()
{
B b,*pb;
C c;
pb=&b;
fun(pb);
pb=&c;
fun(pb);
}
下面程序的运行结果如下:
This is line1
This is line2
This is line3
在下划线处填上缺少的部分。源程序如下:
#include
#include
using namespace std;
void main()
{
fstream fin, fout;
fout.open("my.txt",ios::out);
if(!fout.is_open())
return;
for(int i=0;i<3;i=i+1)
fout<<"This is line"<<><>< strong="">
fout.close();
fin.open("my.txt",ios::in);
if(! fin.is_open())
return;
char str[100];
while(!fin.eof())
{
fin.getline(str,100);
cout<<><>< strong="">
}
fin.close();
}
A.属于全局变量
B.只属于该类
C.属于该类,某些情况下也可被该类不同实例所共享
D.任何情况下都可被该类所有实例共享
如没有使用private关键字定义类的数据成员,则默认为( )
A.private
B.public
C.protected
D.friend
类的私有成员可在何处访问( )
A.通过子类的对象访问
B.本类及子类的成员函数中
C.通过该类对象访问
D.本类的成员函数中
下列描述错误的是( )
A.在创建对象前,静态成员不存在
B.静态成员是类的成员
C.静态成员不能是虚函数
D.静态成员函数不能直接访问非静态成员
通常情况下,函数模板中的类型参数个数不能是( )
A.0
B.2
C.4
D.3
下列关于析构函数描述正确的是( )
A.可以重载
B.函数体中必须有delete语句
C.返回类型必须是void类型
D.不能指定返回类型
下面叙述不正确的是( )
A.派生类一般都用公有派生
B.对基类成员的访问必须是无二义性的
C.赋值兼容规则也适用于多重继承的组合
D.基类的公有成员在派生类中仍然是公有的
当一个类的某个函数被说明为virtual时,该函数在该类的所有派生类中( )
A.都是虚函数
B.只有被重新说明时才是虚函数
C.只有被重新说明为virtual时才是虚函数
D.都不是虚函数
在C++中实现封装是借助于( )
A.枚举
B.类
C.数组
D.函数
所有在函数中定义的变量,都是( )
A.全局变量
B.局部变量
C.静态变量
D.寄存器变量
在下列成对的表达式中,运算符“+”的意义不相同的一对是( )
A.5.0+2.0和5.0+2
B.5.0+2.0和5+2.0
C.5.0+2.0和5+2
D.5+2.0和5.0+2
要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为( )
A.const char *p=“ABCD”;
B.char const *p=“ABCD”;
C.char *const p=“ABCD”;
D.const char * const p=“ABCD”;
给出下面程序的输出结果
#include<iostream>
using namespace std;
class Simple
{
int x,y;
public:
Simple(){x=y=0;}
Simple(int i,int j){x=i;y=j;}
void copy(Simple&s);
void setxy(int i,int j){x=i;y=j;}
void print(){cout<<"x="<<x<<",y="<<y<<endl;}
};
void Simple::copy(Simple&s)
{
x=s.x;y=s.y;
}
void func(Simple s1,Simple&s2)
{
s1.setxy(30,40);
s2.setxy(70,80);
}
void main()
{
Simple obj1(1,2),obj2;
obj2.copy(obj1);
func(obj1,obj2);
obj1.print();
obj2.print();
}
下面程序的运行结果如下:
B::display()
C::display()
在下划线处填上缺少的部分。源程序如下:
#include<iostream>
using namespace std;
class B
{
public:
_______display( ) {cout << "B::display( ) "<<endl;}
};
class C:public B
{
public:
void display(){cout<<"C::display()"<<endl;}
};
void fun(B*p)
{
p->display();
}
void main()
{
B b,*pb;
C c;
pb=&b;
fun(pb);
pb=&c;
fun(pb);
}
下面程序的运行结果如下:
This is line1
This is line2
This is line3
在下划线处填上缺少的部分。源程序如下:
#include
#include
using namespace std;
void main()
{
fstream fin, fout;
fout.open("my.txt",ios::out);
if(!fout.is_open())
return;
for(int i=0;i<3;i=i+1)
fout<<"This is line"<<><>< strong="">
fout.close();
fin.open("my.txt",ios::in);
if(! fin.is_open())
return;
char str[100];
while(!fin.eof())
{
fin.getline(str,100);
cout<<><>< strong="">
}
fin.close();
}