Вопросы с тегом «syntax»

334
Что такое ключевое слово open в Swift?

ObjectiveC.swiftФайл из стандартной библиотеки содержит следующие несколько строк кода вокруг линии 228: extension NSObject : Equatable, Hashable { /// ... open var hashValue: Int { return hash } } Что open varозначает в этом контексте, или каково openключевое слово в...

329
Какая формальная разница в Scala между фигурными скобками и скобками, и когда они должны использоваться?

В чем формальная разница между передачей аргументов функциям в скобках ()и фигурных скобках {}? Чувство, которое я получил от книги « Программирование в Scala», заключается в том, что Scala довольно гибкая, и я должен использовать ту, которая мне нравится больше всего, но я считаю, что некоторые...

315
Оператор Case с несколькими значениями в каждом блоке «когда»

Лучший способ описать то, что я ищу, это показать вам неудачный код, который я пробовал до сих пор: case car when ['honda', 'acura'].include?(car) # code when 'toyota' || 'lexus' # code end У меня есть около 4 или 5 различных whenситуаций, которые должны быть вызваны примерно 50 различными...

312
Что делает ключевое слово `forall` в Haskell / GHC?

Я начинаю понимать, как forallключевое слово используется в так называемых «экзистенциальных типах», например: data ShowBox = forall s. Show s => SB s Однако это только часть того, как forallэто используется, и я просто не могу сосредоточиться на его использовании в таких вещах: runST :: forall...

308
Понимание неявного в Scala

Я пробирался через учебник по игровой структуре Scala и наткнулся на фрагмент кода, который меня озадачил: def newTask = Action { implicit request => taskForm.bindFromRequest.fold( errors => BadRequest(views.html.index(Task.all(), errors)), label => { Task.create(label)...

306
Обобщения Java - почему «расширяет T» разрешено, но не «реализует T»?

Интересно, есть ли в Java особая причина использовать всегда " extends", а не " implements" для определения границ параметров типа. Пример: public interface C {} public class A<B implements C>{} запрещено, но public class A<B extends C>{} правильно. В чем причина...

303
Доступ к ключам ввода как атрибут?

Я нахожу его более удобным для Dict доступа клавиш , как obj.fooвместо того , чтобы obj['foo'], таким образом , я написал этот фрагмент кода: class AttributeDict(dict): def __getattr__(self, attr): return self[attr] def __setattr__(self, attr, value): self[attr] = value Тем не менее, я предполагаю,...

284
Как использовать точку «.» получить доступ к членам словаря?

Как сделать элементы словаря Python доступными через точку "."? Например, вместо того, чтобы писать mydict['val'], я хотел бы написать mydict.val. Также я хотел бы получить доступ к вложенным диктовкам таким образом. Например mydict.mydict2.val будет относиться к mydict = { 'mydict2': { 'val': ......

282
Почему я должен использовать точку с запятой после каждой функции в javascript?

Я видел, как разные разработчики включают точки с запятой после функций в javascript, а некоторые нет. Что является лучшей практикой? function weLikeSemiColons(arg) { // bunch of code }; или function unnecessary(arg) { // bunch of code }...

277
Добавить свойство в объект JavaScript, используя переменную в качестве имени?

Я вытаскиваю элементы из DOM с помощью jQuery и хочу установить свойство для объекта, используя idэлемент DOM. пример const obj = {} jQuery(itemsFromDom).each(function() { const element = jQuery(this) const name = element.attr('id') const value = element.attr('value') // Here is the problem...

277
Список синтаксиса декларации блока

Блочный синтаксис в Objective C (и, как я полагаю, C), как известно, неуместен. Передача блоков в качестве аргументов выглядит иначе, чем объявление блоков как ivars, что выглядит иначе, чем в typedefблоках. Есть ли полный список синтаксиса объявления блока, который я мог бы держать под рукой для...

271
Как «int main () {(([] () {}) ());}» является допустимым C ++?

Недавно я наткнулся на следующий эзотерический фрагмент кода. int main(){(([](){})());} Переформатируйте его следующим образом, чтобы сделать его более читабельным: int main(){ (([](){})()); // Um... what?!?! } Но я не могу понять, как (([](){})())действует код. Это не похоже на синтаксис указателя...

265
Ruby - тест для массива

Какой правильный способ: is_array("something") # => false (or 1) is_array(["something", "else"]) # => true (or > 1) или получить количество предметов в