Вопросы с тегом «language-design»

Тег для вопросов, связанных с дизайном любого аспекта языков программирования.

22
Соглашения об исключениях или кодах ошибок
Вчера я горячо спорил с коллегой о том, какой метод сообщения об ошибках лучше всего использовать. В основном мы обсуждали использование исключений или кодов ошибок для сообщения об ошибках между уровнями приложения или модулями. Какие правила вы используете, чтобы решить, вызывать ли вы исключения или возвращать коды ошибок для отчетов …


17
Почему множественное наследование запрещено в Java или C #?
Я знаю, что в Java и C # множественное наследование запрещено. Во многих книгах прямо говорится, что множественное наследование недопустимо. Но это можно реализовать с помощью интерфейсов. Ничего не обсуждается, почему это запрещено. Кто-нибудь может сказать мне, почему это запрещено?

5
Почему скобки конструктора инициализатора объекта C # 3.0 необязательны?
Кажется, что синтаксис инициализатора объекта C # 3.0 позволяет исключить пару круглых скобок открытия / закрытия в конструкторе, когда существует конструктор без параметров. Пример: var x = new XTypeName { PropA = value, PropB = value }; В отличие от: var x = new XTypeName() { PropA = value, PropB …

5
Почему в C # недопустимы параметры const?
Это выглядит странно, особенно для разработчиков на C ++. В C ++ мы обычно отмечали параметр как const, чтобы быть уверенным, что его состояние не будет изменено в методе. Существуют также другие причины, специфичные для C ++, например, передача const refдля передачи по ссылке и уверенности в том, что состояние …

7
PHP глобальный в функциях
Какая польза от глобального ключевого слова ? Есть ли причины предпочесть один метод другому? Безопасность? Производительность? Что-нибудь еще? Способ 1: function exempleConcat($str1, $str2) { return $str1.$str2; } Способ 2: function exempleConcat() { global $str1, $str2; return $str1.$str2; } Когда есть смысл использовать global? Для меня это кажется опасным ... но …

3
Нумерация месяцев с отсчетом от нуля [закрыто]
В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, снова открыть, …


6
Вызов метода Java varargs с одним нулевым аргументом?
Если у меня есть Java-метод vararg foo(Object ...arg)и я вызываю foo(null, null), у меня есть оба arg[0]и arg[1]как nulls. Но если я позвоню foo(null), argсамо будет null. Почему это происходит? Как мне называть fooтакое, что foo.length == 1 && foo[0] == nullесть true?

4
Заменил бы '::' на '. создать неясности в C ++?
В C ++ оператор ::используется для доступа к классам, функциям и переменным в пространстве имен или классе. Если бы спецификация языка использовалась .вместо того, чтобы ::в тех случаях, например, при доступе к переменным / методам экземпляра объекта, вызывать ли это возможные неоднозначности, которых нет ::? Учитывая, что C ++ не …

10
Почему C ++ не допускает унаследованную дружбу?
Почему дружба по крайней мере необязательно наследуется в C ++? Я понимаю, что транзитивность и рефлексивность запрещены по очевидным причинам (я говорю это только для того, чтобы избежать простых ответов на часто задаваемые вопросы), но отсутствие чего-то в этом роде virtual friend class Foo;меня озадачивает. Кто-нибудь знает историческую подоплеку этого …

7
Факторы в R: больше, чем раздражение?
Один из основных типов данных в R - это факторы. По моему опыту, факторы - это в основном боль, и я никогда не использую их. Я всегда конвертирую в персонажей. Странное чувство, будто я чего-то упускаю. Есть ли какие-нибудь важные примеры функций, которые используют факторы в качестве группирующих переменных, где …


5
реализация вывода типа
Я вижу здесь несколько интересных дискуссий о статической и динамической типизации. Обычно я предпочитаю статическую типизацию из-за проверки типа компиляции, лучшего документированного кода и т. Д. Однако я согласен с тем, что они действительно загромождают код, например, так, как это делает Java. Итак, я собираюсь начать создавать собственный язык функционального …

6
Есть ли на каком-либо другом языке, кроме JavaScript, разница между начальными местоположениями скобок (та же строка и следующая строка)?
Сегодня, когда я случайно читал книгу О'Рейли по шаблонам JavaScript, я обнаружил одну интересную вещь (стр. 27 для справки). В Javascript в некоторых случаях есть разница, если место начала фигурной скобки отличается. function test_function1() { return { name: 'rajat' }; } var obj = test_function1(); alert(obj); //Shows "undefined" Пока function …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.