C++ 하다 보면, 람다함수에서 외부지역변수 수정을 숨쉬듯이 하는 편인데, Java 에서 동일한 형태로 람다함수를 사용하려고 하면, 오류난다.  // Java import java.util.function.Consumer;  public class MyClass {     public String getString() {         String result = "";          Consumer<String> lamda = (String name) -> {             result = "<<" + name + ">>";         };          return result;     }      public static void main(String[] args) {         System.out.println("new MyClass().getString(): " + new MyClass().getString());     } } // 컴파일 결과 // javac MyClass.java // MyClass.java:8: error: local variables referenced from a lambda expression must be final or effectively final //             result = "<<" + name + ">>"; //             ^ // 1 error   // C++ #include <iostream> #include <string> using namespace std;  class MyClass {     public:         string getString() {             string result;              auto lamda = [&] (stri...