2015-05-27 2 views
0

У меня есть быстрый класс, который выглядит, как этот фонд импортаКак сохранить весь класс Swift как String?

class MCPerson{ 
var firstName: String 
var lastName: String 
var age: Int 

init(firstName: String, lastName: String, age: Int){ 
    self.firstName = firstName 
    self.lastName = lastName 
    self.age = age 
} 

} 

Я хочу сохранить весь этот класс в виде строки, которая может выглядеть следующим образом ..

var str = "class MCPerson{var firstName: String 
var lastName: String 
var age: Int 

init(firstName: String, lastName: String, age: Int){ 
self.firstName = firstName 
self.lastName = lastName 
self.age = age 
} 

}" 

Может кто-нибудь пожалуйста Помогите??

+4

Что вы пытаетесь достичь? – zaph

ответ

2

Вы не можете сохранить реализацию следующим образом. Когда вы компилируете свой код, все быстрые классы преобразуются в двоичную форму . Следовательно, вы не можете получить его как строку. Если вы хотите, чтобы вы указали выше, у вас есть свой класс в качестве файла. (что означает В текстовом файле). Чтобы вы могли прочитать этот файл и использовать его как строку.

0

Если вы на самом деле хотел поместить строки кода в виде одной строки в Swift вам нужно будет добавить кавычки вокруг каждой строки и включают сбежавших символы новой строки и конкатенации символ:

var str = "class MCPerson{var firstName: String\n" + 
" var lastName: String\n" + 
" var age: Int\n" + 
"\n" + 
"init(firstName: String, lastName: String, age: Int){\n" + 
" self.firstName = firstName\n" + 
" self.lastName = lastName\n" + 
" self.age = age\n" + 
" }\n" + 
"\n" + 
"}" 

Но в целом бесполезно помещать код в строку и, вероятно, не достигает результата, который вы ищете.

0

Ваш вопрос довольно бессмыслен. Ваша работающая программа не имеет доступа к исходному коду. Кроме того, на устройстве iOS нет компилятора. Таким образом, вы не можете получить исходный код, как только ваша программа будет скомпилирована, и вы не сможете ничего с ней сделать, даже если сможете.

Таким образом, ответ «Вы не можете, и это не принесет вам никакой пользы, даже если бы вы могли».

Смежные вопросы