1。int i=1,j=2; cout<<i+++j<<endl; 结果为3.
2.设有如下 class 定义:
#include <iostream>
using namespace std;
class CA
{
public:
virtual void foo(int i)
{ cout << "void CA::foo(int i)" << endl; }
};
class CB : public CA
{
public:
virtual void foo(int i)
{ cout << "void CB::foo(int i)" << endl; }
virtual void foo(double d)
{ cout << "void CB::foo(double d)" << endl; }
};
void main(void)
{
CB b;
CA & a = b;
a.foo(5.0);
b.foo(5.0);
}
输出结果为void CB::foo(int i) void CB::foo(double d),注意仔细体会其中的含义。
3.for循环语句中,for ( int i=0,j=5;i=j;)形式正确,但是for ( int i=0,j=5;i=j);不正确,因为for循环括号中必须有两个分号。
4.void fun(int){} double b=2.7; fun(b);正确 但是void fun(int *){} bouble b=2.7; fun(&b):不正确
5.int fun4( int ); int(*pf)(int) = fun4; 调用时为 cout<<(*pf)( 256 );莫写为cout << *pf( 256 );
6.int n=5; int a[n];不正确,应该为const int n=5才行。
7.用转换构造函数可以将一个指定类型的数据转换为类的对象。
8.在C++中,构造函数,拷贝构造函数,析构函数,赋值函数,友元函数都不可被派生类继承。
9.若要实现多态联编,必须用基类指针调用虚函数。
10.含有纯虚函数的类称为抽象类。