online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code   
Language
using System; public interface Color { string GetNameColor(); } public class WhiteColor : Color { public string GetNameColor() => "White"; } public class YellowColor : Color { public string GetNameColor() => "Yellow"; } public class GreyColor : Color { public string GetNameColor() => "Grey"; } public class OrangeColor : Color { public string GetNameColor() => "Orange"; } // Interface Factory để sản xuất màu public interface ColorFactory { Color GetColor(); } // Các lớp Factory cụ thể cho từng khu vực public class AsianColorFactory : ColorFactory { public Color GetColor() { if (new Random().Next(0, 2) == 0) { return new WhiteColor(); } else { return new YellowColor(); } } } public class EuropeColorFactory : ColorFactory { public Color GetColor() { if (new Random().Next(0, 2) == 0) { return new GreyColor(); } else { return new OrangeColor(); } } } public class PaintProduction { private static void ProducePaint(ColorFactory factory) { Color color = factory.GetColor(); Console.WriteLine($"Producing paint of color: {color.GetNameColor()}"); } public static void Main(string[] args) { // Sản xuất sơn cho thị trường châu Á ColorFactory asianFactory = new AsianColorFactory(); ProducePaint(asianFactory); // Sản xuất sơn cho thị trường châu Âu ColorFactory europeFactory = new EuropeColorFactory(); ProducePaint(europeFactory); } }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue