explicit MyClass(T initial = T()) {
                  
                  
                          value_ = initial;
                  
                  
                      }
                  
                  
                  
                  
                  
                      struct MyStruct {
                  
                  
                  
                  
                  
                          T& ref_to_value = value_;
                  
                  
                      };
                  
                  
                  
                  
                  
                      MyStruct Out() {
                  
                  
                          MyStruct rr;
                  
                  
                          //access.ref_to_value = value_;
                  
                  
                          return rr;
                  
                  
                      }
                  
                  
                  
                  
                  
                  private:
                  
                  
                      T value_;
                  
                  
                  };
                  
                  
                  
                  
                  
                  
                  
                  
                  int main() {
                  
                  
                      MyClass<string> test("test");
                  
                  
                      cout << test.Out().ref_to_value << endl;
                  
                  
                      
                  
                  
                  }
                  
                  
                
Вы "inner-class" хотите? У типов нет такой связи (как, например, следовало бы инициализировать MyStruct::ref_to_value, создай я экземляр за пределами методов MyClass, в main(), например: MyClass<int>::MyStruct s;).
Обсуждают сегодня