2014-10-16 2 views
0

클래스 C에서 클래스 C를 작성했습니다. Swift에서 사용해야합니다. 그러나 나는 이것을 부름을 선언하는 방법을 모른다.클래스 카테고리를 사용하는 방법 Swift의 목표 C?

 var vcfPart: NSDictionary = [kSKPSMTPPartContentTypeKey:"video/quicktime;\r\n\tx-unix-mode=0644;\r\n\tname=\"video.mp4\"", kSKPSMTPPartContentTypeKey:"attachment;\r\n\tfilename=\"video.mp4\"", kSKPSMTPPartContentDispositionKey: self.rep ,kSKPSMTPPartMessageKey:"base64", kSKPSMTPPartContentTransferEncodingKey: "8bit"] 

데이터 유형은 NSData입니다. 나는있는 NSData + Base64Additions https://github.com/kailoa/iphone-smtp/blob/master/Classes/NSData%2BBase64Additions.m

목표 C 호출에서 이것을 인코딩이 필요 .. 내가 확장자 스위프트이를 선언하는 방법을 모르는

NSDictionary * vcfPart3 = [NSDictionary dictionaryWithObjectsAndKeys:@"video/quicktime;\r\n\tx-unix-mode=0644;\r\n\tname=\"video.mp4\"",kSKPSMTPPartContentTypeKey, 
          @"attachment;\r\n\tfilename=\"video.mp4\"",kSKPSMTPPartContentDispositionKey, [data encodeWrappedBase64ForData], kSKPSMTPPartMessageKey, @"base64", kSKPSMTPPartContentTransferEncodingKey, nil]; 

이 사용 방법 빠른?

감사합니다.

+0

인스턴스 변수를 선언하는 것이 가능하지 않다 Objective-C의 범주에 있습니다. 게다가이 코드는 Objective-C에서 인스턴스 변수 선언이 될 수 없습니다. 왜냐하면 초기화 코드를 가질 수 없기 때문입니다. 그래서 당신이 무엇을 요구하는지는 매우 불분명합니다. – newacct

답변

1

확장 프로그램에는 저장된 속성이 포함될 수 없습니다. 컴파일러에서 이미 알려주므로. 이것이 실제로 상수라면 computed property으로 표현하면 괜찮을 것입니다. 즉

, 이것은 확장에 불법 :

let i = 4 

그러나 이것은 법적 :

는 "객관적인 C 통화에서"
var i : Int { 
    return 4 
} 
+0

예를 들어 이해가 안 되니? – user3745888

+0

문서에 링크되었습니다. – matt

+0

하지만 내 의심은 - (NSString *) encodeWrappedBase64ForData를 사용하여 데이터를 호출하거나 반환하는 방법입니다. – user3745888