Форматирование строки Swift 4.1 на Linux [дубликат]

Более гибкое решение для создания элементов и связывания событий ( source )

// creating a dynamic element (container div)
var $div = $("
", {id: 'myid1', class: 'myclass'}); //creating a dynamic button var $btn = $("

Примечание. Это создаст экземпляр обработчика события для каждого элемента (может повлиять на производительность при использовании в петлях)

5
задан O-mkar 8 March 2017 в 13:03
поделиться

2 ответа

NSLog принимает в качестве первого аргумента строку формата format, , за которой следует список аргументов, которые заменяются заполнителями в строке формата (сравните String Format Specifiers ).

На платформах Apple вы можете распечатать String с использованием формата %@:

let fileName = "the file"
NSLog("File not found: %@", fileName)

Однако это не работает на платформах Linux ( таких как пар). Здесь вам нужно преобразовать строку Swift в строку C, чтобы передать ее как аргумент NSLog (и использовать формат %s для строк C):

let fileName = "the file"
fileName.withCString {
    NSLog("File not found: %s", $0)
}
10
ответ дан Martin R 19 August 2018 в 04:47
поделиться

Кажется, вы используете инфраструктуру Vapor, и я цитирую:

Не все базовые библиотеки (Foundation) доступны в Linux еще.

Проблема, которую вы создали над Vapor, уже получила ответ: https://github.com/vapor/vapor/issues/870

1
ответ дан Laffen 19 August 2018 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: