想到一些東西記下來,避免忘了。。
-------------------------------1----------------------------------
- int a[2][4];
- int (*p)[4]=a;
此時p是行指針,相當與a的一個別名。
-------------------------------------------------------
在c++中引用這個特性中,也有類似的用法。
- int (&p)[4]=a;
但請注意,此時的a不再是二維數組而是一維數組:
- int a[4];
--------------------------2------------------------------
- int *p=new int();
- cout<<*p<<endl;
- delete p;
進行了初始化,*p=0;
注:vc6.0不符合標準
//2011年12月19日 17:30:13
--------------------3---------------------------
返回引用的函數返回一個左值
- #include<stdio.h>
- int & change(int (&a)[5])
- {
- return a[0];
- }
- void main()
- {
- int a[5];
- change(a)=5;
- printf("%d\n",a[0]);
- }
輸出: 5
------------4---------------------
默認實參
- void a(int b=3)
- {
- printf("%d\n",b);
- }
- void main()
- {
- a();
- a(1);
- }
輸出:
3
1
//2011年12月19日 22:44:09
------------5-----------------------------------
- #include <iostream>
- using namespace std;
- class addtest
- {
- public:
- static int data;
- void add()
- {
- data=1;
- }
- addtest()
- {
- data=0;
- }
- static void print()
- {
- cout<<"hello world"<<endl;
- }
- };
- int addtest::data=0;
- class addtestb :public addtest
- {
- };
- void main()
- {
- addtest a,c;
- addtestb b;
- a.data++;
- b.data++;
- c.data++;
- cout<<a.data<<endl;
- addtest::print();
-
- }
輸出 3 //2011年12月29日 23:28:39