public static void Run() { DisplayBetterCar(new BetterCar() { Car = new Car() { Color = "Black", Make = "Toyota" }, PetName = "Blacky" }); foreach (var car in GiveMeThreeBasicCarsHelper()) { Console.WriteLine(car.Make); } var cars = new CarFixed[3]; FillThreeBasicCars(cars); foreach (var car in cars) { Console.WriteLine(car.Make); } unsafe { // Note how we use pointer arithmetic and fixed buffers here fixed(CarFixed2 *cars2 = new CarFixed2[3]) { FillThreeBasicCars2(cars2); for (int i = 0; i < 3; i++) { Console.WriteLine(new string(cars2[i].Make)); } } } var makes = new string[3]; int length = 0; GiveMeMakes(out makes, out length); foreach (var make in makes) { Console.WriteLine(make); } foreach (var make in GiveMeMakesHelper()) { Console.WriteLine(make); } }
public static void Run() { DisplayBetterCar(new BetterCar() { Car = new Car() { Color = "Black", Make = "Toyota" }, PetName = "Blacky" }); foreach (var car in GiveMeThreeBasicCarsHelper()) { Console.WriteLine(car.Make); } var cars = new CarFixed[3]; FillThreeBasicCars(cars); foreach (var car in cars) { Console.WriteLine(car.Make); } unsafe { // Note how we use pointer arithmetic and fixed buffers here fixed (CarFixed2* cars2 = new CarFixed2[3]) { FillThreeBasicCars2(cars2); for (int i = 0; i < 3; i++) { Console.WriteLine(new string(cars2[i].Make)); } } } var makes = new string[3]; int length = 0; GiveMeMakes(out makes, out length); foreach (var make in makes) { Console.WriteLine(make); } foreach (var make in GiveMeMakesHelper()) { Console.WriteLine(make); } }