«closures» 태그된 질문

클로저는 정의 된 범위에서 변수를 참조 (폐쇄)하는 일류 함수입니다. 정의 범위가 끝난 후에도 클로저가 계속 존재하면 클로저가 닫히는 변수도 계속 존재합니다.

7
자바 7의 폐쇄 [종료]
닫은. 이 질문은 Stack Overflow 지침을 충족하지 않습니다 . 현재 답변을 받고 있지 않습니다. 이 질문을 개선하고 싶으십니까? Stack Overflow의 주제에 맞게 질문을 업데이트하세요 . 휴일 2 년 전 . 이 질문 개선 폐쇄 란 무엇입니까? Java 7에 포함되어야합니다. (클로저는 Java 7에 포함되도록 논의되었지만 결국에는 포함되지 않았습니다. -ed) 클로저에 대해 …
105 java  closures 

4
중첩 함수의 지역 변수
좋아요, 이것에 대해 참아주세요. 끔찍하게 복잡해 보일 것이라는 것을 압니다.하지만 무슨 일이 일어나고 있는지 이해하도록 도와주세요. from functools import partial class Cage(object): def __init__(self, animal): self.animal = animal def gotimes(do_the_petting): do_the_petting() def get_petters(): for animal in ['cow', 'dog', 'cat']: cage = Cage(animal) def pet_function(): print "Mary pets the " + …

7
Swift의 블록 (animateWithDuration : animations : completion :)
Swift에서 블록을 작동시키는 데 문제가 있습니다. 다음은 완료 블록없이 작동 한 예입니다. UIView.animateWithDuration(0.07) { self.someButton.alpha = 1 } 또는 후행 폐쇄없이 : UIView.animateWithDuration(0.2, animations: { self.someButton.alpha = 1 }) 하지만 완료 블록을 추가하려고하면 작동하지 않습니다. UIView.animateWithDuration(0.2, animations: { self.blurBg.alpha = 1 }, completion: { self.blurBg.hidden = true }) 자동 완성 …
102 ios  swift  closures 

1
수정 된 폐쇄에 대한 액세스 (2)
이것은 Access to Modified Closure 의 질문을 확장 한 것입니다 . 다음이 실제로 프로덕션 용도로 충분히 안전한지 확인하고 싶습니다. List<string> lists = new List<string>(); //Code to retrieve lists from DB foreach (string list in lists) { Button btn = new Button(); btn.Click += new EventHandler(delegate { MessageBox.Show(list); }); } 위의 …
101 c#  .net  resharper  closures 

2
섬유질이 필요한 이유
Fibers의 경우 전형적인 예가 있습니다 : 피보나치 수 생성 fib = Fiber.new do x, y = 0, 1 loop do Fiber.yield y x,y = y,x+y end end 여기에 섬유가 필요한 이유는 무엇입니까? 동일한 Proc로 이것을 다시 작성할 수 있습니다 (실제로는 클로저) def clsr x, y = 0, 1 Proc.new do …
101 ruby  lambda  closures  fibers  proc 

6
이 JavaScript 패턴은 무엇이며 왜 사용됩니까?
THREE.js를 공부하고 있는데 함수가 다음과 같이 정의되는 패턴을 발견했습니다. var foo = ( function () { var bar = new Bar(); return function ( ) { //actual logic using bar from above. //return result; }; }()); (예제는 여기에서 raycast 방법을 참조 하십시오 ). 이러한 방법 의 일반적인 변형은 다음과 같습니다. …

2
Swift @escaping 및 완료 처리기
Swift의 'Closure'를 좀 더 정확하게 이해하려고 노력하고 있습니다. 그러나 @escaping하고 Completion Handler이해하기 너무 어렵다 많은 Swift 게시물과 공식 문서를 검색했지만 여전히 충분하지 않다고 느꼈습니다. 이것은 공식 문서의 코드 예제입니다 var completionHandlers: [()->Void] = [] func someFunctionWithEscapingClosure(completionHandler: @escaping ()->Void){ completionHandlers.append(completionHandler) } func someFunctionWithNoneescapingClosure(closure: ()->Void){ closure() } class SomeClass{ var x:Int = …

2
익명 함수를 매개 변수로 사용하여 외부 변수에 액세스
기본적으로이 편리한 기능을 사용하여 db 행을 처리합니다 (PDO 및 / 또는 기타 항목에 대해 눈을 감으십시오). function fetch($query,$func) { $query = mysql_query($query); while($r = mysql_fetch_assoc($query)) { $func($r); } } 이 기능을 사용하면 다음을 수행 할 수 있습니다. fetch("SELECT title FROM tbl", function($r){ //> $r['title'] contains the title }); 이제 모든 …
93 php  closures  scope 

1
Pylint의 Cell-var-from-loop 경고
다음 코드의 경우 : for sort_key, order in query_data['sort']: results.sort(key=lambda k: get_from_dot_path(k, sort_key), reverse=(order == -1)) Pylint가 오류를보고했습니다. 루프에 정의 된 셀 변수 sort_key (cell-var-from-loop) 아무도 여기서 무슨 일이 일어나고 있는지 힌트를 줄 수 있습니까? pylint 소스 코드에서 설명은 다음과 같습니다. 클로저에 사용되는 변수는 루프에서 정의됩니다. 이것은 모든 클로저가 closed-over …


12
함수 포인터, 클로저 및 Lambda
지금 막 함수 포인터에 대해 배우고 있습니다.이 주제에 대한 K & R 장을 읽으면서 가장 먼저 느꼈던 것은 "이봐, 이건 마치 클로저와 같다"는 것이었다. 나는이 가정이 근본적으로 잘못되었다는 것을 알았고 온라인에서 검색 한 후이 비교에 대한 분석을 실제로 찾지 못했습니다. 그렇다면 C 스타일 함수 포인터가 클로저 또는 람다와 근본적으로 다른 …

6
JavaScript 함수 별칭이 작동하지 않는 것 같습니다.
나는 이 질문을 읽고 있었고 함수 래퍼 방법이 아닌 별칭 방법을 시도하고 싶었지만 Firefox 3 또는 3.5beta4 또는 Google Chrome에서 디버그 창과 테스트 웹 페이지에서. 개똥 벌레: >>> window.myAlias = document.getElementById function() >>> myAlias('item1') >>> window.myAlias('item1') >>> document.getElementById('item1') <div id="item1"> 웹 페이지에 넣으면 myAlias를 호출하면 다음 오류가 발생합니다. uncaught exception: …

13
클로저를 설명 할 수 있습니까 (파이썬과 관련이 있기 때문에)?
나는 폐쇄에 대해 많이 읽고 이해한다고 생각하지만 나 자신과 다른 사람들을 위해 그림을 흐리게하지 않고 누군가가 폐쇄를 가능한 한 간결하고 명확하게 설명 할 수 있기를 바랍니다. 나는 어디서 그리고 왜 사용하고 싶은지 이해하는 데 도움이 될 간단한 설명을 찾고 있습니다.

8
JDK 8의 기본값은 Java에서 다중 상속의 한 형태입니까?
JDK 8의 새로운 기능을 사용하면 바이너리 호환성을 유지하면서 기존 인터페이스에 추가 할 수 있습니다. 구문은 다음과 같습니다. public interface SomeInterface() { void existingInterface(); void newInterface() default SomeClass.defaultImplementation; } 이러한 방식으로 기존의 모든 구현 SomeInterface에서이 새 버전으로 업그레이드 할 때 갑자기 newInterface(). 이것은 깔끔하지만 구현하지 않은 새로운 기본 메서드를 추가 한 …


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.