c++試題(9)

來源:互聯網
上載者:User

1.請說明下面的例子中static 關鍵字的用途:
①static int a = 100;

②static int func_1(int iParam)
{
     ...
}

③int func_2(int iParam)
{
static int b = 0;
...
};

④class CA
{
static int c;
static int func_3(int iParam);
...
};

2.請說明下面的例子中 const 關鍵字的用途:

①const int d = 100;
const char * pStr_0 = “abcd”;
char * const pStr_1 = “ABCD”;

②class CB
{
int func_4(int iParam) const;
int func_5(int iParam);
...
};

3。 在下面的func_4()的實現中,哪些語句是不合法的?
int CB::func_4(int iParam)const
{
d ++;
int * pd = &d;
*pd ++;

pStr_0[0]= 0;
pStr_0= pStr_1;

pStr_1[0]= 0;
pStr_1= pStr_0;

...
}

4。有關記憶體申請和釋放

// 請說明下面兩種方式申請記憶體有何異同
//方式 1
int *p1;
p1 = malloc(sizeof(int)*100);
//方式 2
int *p2;
p2 = new int [100]; 

5。請說明下面兩種方式申請記憶體有何異同
struct _st
{
int a;
int b;
...
}* st_1, *st_2
//方式 1
st_1 = malloc(sizeof(_st)*100);
//方式 2
st_2 = new _st [100]; 

6。 請說明下面兩種方式申請記憶體有何異同
class CA
{
public:
CA();
~CA();
...
}* ca_1, *ca_2
//方式 1
ca_1 = malloc(sizeof(CA)*100);
//方式 2
ca_2 = new CA [100];

 

7。 請說明下面幾種方式釋放記憶體有何異同
int *p;
p = new int [100];
//方式 1
free(p);
//方式 2
delete p;
//方式 3
delete [] p;

 

 

8  請說明下面幾種方式釋放記憶體有何異同
class CA
{
public:
CA();
~CA();
...
}* pCA;
pCA = new CA [100];
//方式 1
free(pCA);
//方式 2
delete pCA;
//方式 3
delete [] pCA;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.