일단 앱이 컴파일되면 변수 이름 같은 것은 없으므로이 질문은별로 의미가 없습니다. 귀하의 예제에서 myVar
은 프로그래머를위한 편리한 레이블 일 뿐이며 일단 소스 코드가 바이너리 코드로 컴파일되면 어떤 식 으로든 존재하지 않습니다.
오브젝트를 nib 파일에두면 오브젝트가 런타임에 아카이브되고 아카이브 해제됩니다. nib 파일에 보관 된 객체에 대한 참조를 얻으려면 콘센트를 사용해야합니다. 즉, nib 파일에있는 클래스에 IBOutlet
인스턴스 변수를 선언하고 연결합니다 인터페이스 빌더에서 참조하려는 펜촉의 오브젝트에 대한 콘센트. 인스턴스 변수는 예제에서 선언 한 스택 변수와 다르며 런타임에 참조 할 수 있습니다.
일반적으로 펜촉을 "소유하고있는"개체가 있습니다. 일반적으로 펜촉은 NSWindowController
또는 NSViewController
의 인스턴스로로드되고 창 또는보기 컨트롤러는 nib 파일에 파일 소유자으로 표시됩니다. 창 /보기 컨트롤러에 콘센트를 선언하면 Interface Builder에서 File 's Owner에서 개체로 콘센트를 연결할 수 있습니다.
따라서 명확하게하기 위해 동일한 펜촉에있는 다른 객체의 펜촉에있는 객체에 대한 참조가 필요합니다.
@interface SomeOtherObject : NSObject
{
IBOutlet SomeObject* anObject;
}
@end
이 인터페이스 빌더에서, 당신은 다음 첫 번째 SomeObject
인스턴스에 SomeOtherObject
인스턴스의 anObject
콘센트에 연결할 수 있습니다 : 그 두 번째 목적은과 같이 인스턴스 변수에 IBOutlet
키워드를 사용하여 출구를 선언합니다. 한 객체에서 다른 객체로 컨트롤 드래그하거나 인터페이스 빌더 속성의 연결 패널에서이 작업을 수행 할 수 있습니다.
그러면 SomeObject
인스턴스를 코드의 변수 이름 anObject
으로 참조 할 수 있습니다.
무엇을하려고합니까? 당신이 잘못된 방향으로 가고있는 것일 수 있습니다. 행운을 빕니다! – kubi