Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 438 439 [440] 441 442 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#6586
,
|
|
|
|
А толку? Сотню-другую фокспрошных скриптов кто переписывать будет? =) Мы с коллегой уже предлагали все переписать, нам не разрешили. |
|
Сообщ.
#6587
,
|
|
|
|
Цитата korvin @ Делфи уже умеет выдавать хинты о неиспользуемых результатах функций? А то я сегодня минут 20 искал логическую ошибку из-за того, что по привычке (от Inc) написал нет. а в С++ такое есть?? C# решарпер умеет такое. |
|
Сообщ.
#6588
,
|
|
|
|
О неиспользуемых переменных C++ на warning level 4 сообщает. Главное, не игнорировать его предупреждения.
Или я не понял словосочетание "неиспользуемый результат функции" ? |
|
Сообщ.
#6589
,
|
|
|
|
Цитата Бобёр @ Или я не понял словосочетание "неиспользуемый результат функции" Не понял. А кстати, зачем хинт? Я иногда умышленно не использую |
|
Сообщ.
#6590
,
|
|
|
|
Цитата Бобёр @ ли я не понял словосочетание "неиспользуемый результат функции" int mul(int x, int y) {return x * y; } mul(10, 20); // наверняка ошибка. имелось в виду что нить типа int z = mul(10, 20) Цитата --Ins-- @ А кстати, зачем хинт? Я иногда умышленно не использую ну вот в C# есть атрибут PureAttribute которым можно пометить функцию, которая не имеет сайд эффектов. весь смысл которой только в вычислении результата. вот если при вызове этой функции её результат нигде не использует, то это ошибка. И R# выдает варнинг |
|
Сообщ.
#6591
,
|
|
|
|
Дельфи с отключенным Extended Syntax тебе такой код не откомпилирует, пока функция не будет вызвана как функция, а не как процедура.
|
|
Сообщ.
#6592
,
|
|
|
|
А что кроме C ещё ниже уровнем? |
|
Сообщ.
#6593
,
|
|
|
|
Цитата MyNameIsIgor @ А что кроме C ещё ниже уровнем? ![]() Я имел в виду "что-нибудь низкоуровневое, системное писать еще да, может плюсы бы и взял, а для моих нужд я на такое не пойду" =) |
|
Сообщ.
#6594
,
|
|
|
|
Цитата korvin @ Цитата MyNameIsIgor @ А что кроме C ещё ниже уровнем? ![]() Я имел в виду "что-нибудь низкоуровневое, системное писать еще да, может плюсы бы и взял, а для моих нужд я на такое не пойду" =) Если для C/C++ есть вменяемая либа для DBF, то можно просто обёркту сделать для любимого языка и не сношать моск дельфёй, благо интерфейс с C вроде как все имеют. |
|
Сообщ.
#6595
,
|
|
|
|
--Ins--, мы кажется не так давно обсуждали наследование конструкторов.
Джону Скиту это кажется разумным и приводит он вот какой аргумент - всё классы наследуют базовому классу Object, но зачем в таком случае к примеру классу FileStream пустой конструктор? И добавляет, что способ создания это личное дело конкретного типа. |
|
Сообщ.
#6596
,
|
|
|
|
Цитата Red @ Джону Скиту это кажется разумным и приводит он вот какой аргумент - всё классы наследуют базовому классу Object, но зачем в таком случае к примеру классу FileStream пустой конструктор? Незачем, и в Delphi у FileStream его и не будет. |
|
Сообщ.
#6598
,
|
|
|
|
Уже ж вроде обсуждали с похожей ссылкой на хабр, что да, нет =) Однако причины так и не выяснили. |
|
Сообщ.
#6599
,
|
|
|
|
Цитата korvin @ Уже ж вроде обсуждали с похожей ссылкой на хабр, что да, нет =) Однако причины так и не выяснили. А что выяснять то? Ниасилили... |
|
Сообщ.
#6600
,
|
|
|
|
Цитата --Ins-- @ Незачем, и в Delphi у FileStream его и не будет. вообще то будет. он буден hidden, но тем не менее такой конструктор есть и его легко вызвать. ![]() ![]() var AClass: TClass; FileStream: TFileStream; begin AClass := TFileStream; FileStream := AClass.Create as TFileStream; end; |