switch statement with variable branches

Yuxuan Shui via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Wed Jan 18 17:22:56 PST 2017


Somehow I can't use ubyte variables behind 'case', but ulong 
works fine. Why is that?

void main() {
	alias TestType = ulong; // won't compile if = ubyte
	import std.stdio;
	TestType a,b,c;
	readf("%s %s %s ", &a, &b, &c);
	switch(c){
		case a: writeln("a");break;
		case b: writeln("b");break;
		default: assert(false);
	}
}


More information about the Digitalmars-d-learn mailing list