- 1
- 2
Ненавижу "Console.WriteLine("something");", "Cube coin = new Cube(2);" и "int[ , ] arr = new int[2,3];".
В крестах все проще: "cout << "something";", "Cube coin(2);" и "int arr[2,3];".
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Ненавижу "Console.WriteLine("something");", "Cube coin = new Cube(2);" и "int[ , ] arr = new int[2,3];".
В крестах все проще: "cout << "something";", "Cube coin(2);" и "int arr[2,3];".
Для меня идеальным языком был бы сисярп с синтаксисом крестов.
> "int arr[2,3];"
C++ - это такой карманный лев Кегдана (кстати, где он?). Вроде всё просто, а потом ты расслабляешься и он кусает тебя через карман за яйца.
Кстати, ошибку можно исправить так: "int arr[(2,3)];", но результат будет не совсем тот, на который мы рассчитываем.
C++/CLI
Прости, Господи.
Понятия не имею почему они положили это в класс Console, очевидно же что можно сделать redirect во что угодно (пайп/stdin другой программы, файл итд)
Про класс ты прав и не прав одновременно: new создает объект на куче, и в твоем примере он создается на стеке.
В C#, afaik, на стеке создаются структуры, а объекты всегда на куче (могу соврать, лет десять уже туда не смотрел) но new использоуется всегда "потому что так было в жабе'
На самом же деле new не нужен потому что если в С++ ты управляешь местом создания объекта (с помощью new) то в C# нет. Это семантический мусор, что в C#, что в джаве, что в PHP.
Хорошо что в Python и Kotlin этого нет
http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rr-newdelete
и только в PHP угадай где их все еще юзают
http://static.fm.tuba.pl/covers/_img/00/00/00/22/97_512.gif?1275729560