0
|
1 // $Header: /home/th/Dokumente/Entwicklung/MEIN_CVS/MiniD/src/run/static_03.d,v 1.1 2004/08/20 23:42:54 th Exp $
|
|
2
|
|
3 class MyClass{
|
|
4 static int status;
|
|
5 static void staticCheck(){
|
|
6 status++;
|
|
7 }
|
|
8
|
|
9 void liveCheck(){
|
|
10 status--;
|
|
11 }
|
|
12
|
|
13 void liveCheck2(){
|
|
14 staticCheck();
|
|
15 }
|
|
16 }
|
|
17
|
|
18 int main(){
|
|
19 MyClass a;
|
|
20 MyClass b = new MyClass();
|
|
21 a.staticCheck();
|
|
22 assert( a.status == 1 );
|
|
23 assert( b.status == 1 );
|
|
24 assert( MyClass.status == 1 );
|
|
25
|
|
26 b.staticCheck();
|
|
27 assert( a.status == 2 );
|
|
28 assert( b.status == 2 );
|
|
29 assert( MyClass.status == 2 );
|
|
30
|
|
31 MyClass.staticCheck();
|
|
32 assert( a.status == 3 );
|
|
33 assert( b.status == 3 );
|
|
34 assert( MyClass.status == 3 );
|
|
35
|
|
36 b.liveCheck();
|
|
37 assert( a.status == 2 );
|
|
38 assert( b.status == 2 );
|
|
39 assert( MyClass.status == 2 );
|
|
40
|
|
41 b.liveCheck2();
|
|
42 assert( a.status == 3 );
|
|
43 assert( b.status == 3 );
|
|
44 assert( MyClass.status == 3 );
|
|
45
|
|
46 return 0;
|
|
47 }
|