diff run/static_03.d @ 0:3269e4627918

init dstress
author svnowner
date Sat, 25 Sep 2004 22:33:30 +0000
parents
children 3414705c41ac
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/static_03.d	Sat Sep 25 22:33:30 2004 +0000
@@ -0,0 +1,47 @@
+// $Header: /home/th/Dokumente/Entwicklung/MEIN_CVS/MiniD/src/run/static_03.d,v 1.1 2004/08/20 23:42:54 th Exp $
+
+class MyClass{
+	static int status;
+	static void staticCheck(){
+		status++;
+	}
+
+	void liveCheck(){
+		status--;
+	}
+
+	void liveCheck2(){
+		staticCheck();
+	}
+}
+
+int main(){
+	MyClass a;
+	MyClass b = new MyClass();
+	a.staticCheck();
+	assert( a.status == 1 );
+	assert( b.status == 1 );
+	assert( MyClass.status == 1 );
+
+	b.staticCheck();
+	assert( a.status == 2 );
+	assert( b.status == 2 );
+	assert( MyClass.status == 2 );
+
+	MyClass.staticCheck();
+	assert( a.status == 3 );
+	assert( b.status == 3 );
+	assert( MyClass.status == 3 );
+
+	b.liveCheck();
+	assert( a.status == 2 );
+	assert( b.status == 2 );
+	assert( MyClass.status == 2 );
+
+	b.liveCheck2();
+	assert( a.status == 3 );
+	assert( b.status == 3 );
+	assert( MyClass.status == 3 );
+
+	return 0;
+}