Описание тега mutating-function

3 ответа

Мутирующая функция внутри структуры

Я использую Swift 4, у меня есть структура, которую я инициализирую значениями по умолчанию. Я сделал внутри функцию, которая должна читать JSON и изменять значения по умолчанию с тем, что он получает, но, похоже, он не работает. Ошибка: Закрытие не…
11 май '18 в 17:15
1 ответ

Быстрая мутирующая функция как первоклассное значение

У меня может быть функция, чтобы поменять местами первые два элемента массива: func swapFirstTwo(array: inout [Int]) { if array.count >= 2 { array.swapAt(0, 1) } } typealias Swapper = (inout [Int]) -> () // And I can have a variable = the func…
2 ответа

Быстрая структура, эквивалентная изменяемому ключевому слову C++?

Есть ли эквивалент в Swift для C++ mutable ключевое слово? У меня есть структура, реализующая протокол, включающий немутирующую функцию, однако внутренняя реализация изменяет внутреннее состояние. Есть ли способ сделать член var класса изменяемым с …
07 мар '16 в 13:52
2 ответа

Используя метод Object.values ​​() для назначения константного массива?

Как бы я заполнил const objArray значениями объекта numObj, используя метод Object.values ​​()? Я смог сделать это только с помощью метода for loop + push (показано ниже) const numObj = { oddNum: 1, evenNum: 2, foundNum: 5, randomNum: 18 }; const ob…
10 июл '18 в 15:58
1 ответ

Попытка изменить массив и объект, переданные в качестве параметров асинхронной функции

Поэтому, если вы посмотрите на код ниже, вы увидите следующую строку с ошибкой: cannot use mutating member on immutable value: 'forecasts' is a 'let' constant вызванный forecasts.append(forecast), У меня есть служебный файл, который вы видите ниже, …
09 фев '17 в 04:24
1 ответ

Почему мутирующая функция next не изменяет структуру (в соответствии с Sequence и IteratorProtocol) после итерации?

Я пишу стековую структуру и делаю ее соответствующей IteratorProtocol а также Sequence протокол. next функция мутирует. Так что я полагаю, что итерация стека приведет к изменению структуры. import Foundation struct Stack<Element> { var store:[…
1 ответ

Быстрая мутация внутри переключателя со связанными значениями

У меня есть эти структуры, которые я хочу мутировать: public struct CheckoutViewModel { var sections: [Section] var total: String public struct Section { var title: String var description: String var kind: Kind var expandState: ExpandState enum Kind…
31 окт '16 в 15:38
1 ответ

Переменная 'xxx' никогда не изменялась; в производном классе

Я публикую свое первое сообщение здесь, у меня есть логичный вопрос о быстром языке. К вашему сведению, я довольно новичок в стремительном языке, я использую код на C++, и мне немного сложно иметь объективную точку зрения на то, как все делать прави…
27 июл '17 в 14:27
1 ответ

Структурирующий мутирующий func, вызывающий func в другом экземпляре той же структуры

Сегодня я быстро узнал о структурах и классах и решил попытаться использовать свои новые знания для оптимизации боевого калькулятора, который я построил ранее. Теперь я понимаю, что свойства, вызываемые в func, по своей природе являются локальными п…
1 ответ

Swift 2: метод мутации структуры не работает изнутри замыкания

Я пытаюсь вызвать метод мутации на одной из моих структур из замыкания. Это не работает. Я планирую закрытие из dispatch_after, Я получаю сообщение об ошибке Partial application of 'mutating' method is not allowed, Это работало в Swift 1.2. Не в Swi…
2 ответа

Mutable и Modifialbe в чем их смысл?

Давайте начнем с некоторых сегментов кода struct DigitS { var number = 42 init(_ n: Int) { self.number = n } mutating func replace() { self = DigitS(12) // mutating } } class DigitC { var number = 42 init(_ n: Int) { self.number = n } func replace()…
0 ответов

Неизменное значение типа "ShopDisplay" имеет только мутирующие элементы с именем "setAllShopItems"

Я пытаюсь установить свойство массива, которое является var, а не let. Обратите внимание на setAllShopItems метод: struct ShopDisplay { private var allShopItemCategories: [ShopItemCategory] private var currentShopItemCategory: ShopItemCategory priva…
13 сен '15 в 21:38
1 ответ

Swift NSDate Extension Error: Mutating недопустим для методов в классах или связанных с классами протоколов

Я пытаюсь продлить NSDate но я получаю две ошибки: extension NSDate { //'mutating' isn't valid on methods in classes or class-bound protocols mutating func addMonth() { let calendar = NSCalendar.currentCalendar() let component = NSDateComponents() c…
09 дек '15 в 17:56
3 ответа

Захват ссылки на структуру в замыкании не допускает возникновения мутаций

Я пытаюсь понять, могу ли я использовать структуры для моей модели, и пытался это сделать. Когда я звоню vm.testClosure(), это не меняет значение x и я не уверен почему. struct Model { var x = 10.0 } var m = Model() class ViewModel { let testClosure…
05 май '16 в 05:29
2 ответа

Mutating func с внешним определением, какую переменную нужно изменить

У меня есть структура с 2 переменными. Эта структура имеет мутирующую функцию, но в этой функции мне нужно проверить, какую переменную мутировать. Для этого я использую статическую функцию отдельного класса со сложной логикой. Этот класс работает с …
06 июл '17 в 13:32
2 ответа

Функция Mutating в расширении протокола, где Self - UIViewController

Я написал протокол и соответствующее расширение, которое использует простое StringStack в тандеме с соглашением об именах в форме "<origin>@<destination>" выполнять переходы между вложенными представлениями в моем приложении Swift. Я нов…
2 ответа

Swift: регистр Enum не найден в типе

Я искал много вопросов здесь, я нашел один с похожим названием Enum case case, не найденный в типе, но не нашел для меня решения. Я бы хотел использовать enum с мутацией для решения вопроса о том, какой будет следующий цвет светофора в отдельных шта…
2 ответа

Как установить свойство класса с помощью мутирующей функции?

Следующий класс предоставляет мутирующую функцию для изменения своего свойства: class Person { struct Location { var coordinate: CLLocationCoordinate2D! var city: String? mutating func setLocationNameFromCoordinate(completion:(()->())?) { let loc…
25 авг '16 в 11:30
3 ответа

Swift struct, изменяющая переменную, не работает?

Я не могу изменить свою переменную класса модели, даже используя mutating func ключевое слово в методе? В общем, я очень легко обернул свою проблему, у меня есть класс Car который имеет 3 переменных id, start, а также modelNo После этого инициализир…
25 сен '18 в 11:22
2 ответа

Добавить к массиву в структуре Swift в Xcode

Я хочу вставить элемент в массив в структуре. У меня есть класс еды class Food { var name: String var category: String } Это было инициализировано. Я создал структуру для хранения различных продуктов питания в группы и поместил эту структуру в масси…
06 фев '18 в 21:54