#warning: el estilo C para la statement está en desuso y se eliminará en una versión futura de Swift

Acabo de download un nuevo Xcode (7.3) con swift 2.2.

Tiene una advertencia:

El estilo C para la statement está en desuso y se eliminará en una versión futura de Swift.

¿Cómo puedo solucionar esta advertencia?

Eliminando for init; comparison; increment {} for init; comparison; increment {} for init; comparison; increment {} y también eliminar ++ y -- fácilmente. y usa el bonito bucle for-in de Swift

  // WARNING: C-style for statement is deprecated and will be removed in a future version of Swift for var i = 1; i <= 10; i += 1 { print("I'm number \(i)") } 

Swift 2.2:

  // new swift style works well for i in 1...10 { print("I'm number \(i)") } 

Para el índice de decremento

  for index in 10.stride(to: 0, by: -1) { print(index) } 

O puede utilizar reverse() como

  for index in (0 ..< 10).reverse() { ... } 

para tipo flotante (there is no need to define any types to index)

  for index in 0.stride(to: 0.6, by: 0.1) { print(index) //0.0 ,0.1, 0.2,0.3,0.4,0.5 } 

Swift 3.0:

Desde Swift3.0 , el Swift3.0 stride(to:by:) en Strideable ha sido reemplazado por una function gratuita, stride(from:to:by:)

 for i in stride(from: 0, to: 10, by: 1){ print(i) } 

Para el índice de decremento en Swift 3.0 , puede usar reversed()

 for i in (0 ..< 5).reversed() { print(i) // 4,3,2,1,0 } 

introduzca la descripción de la imagen aquí


Otros entonces for each y stride() , puede usar While Loops

 var i = 0 while i < 10 { i += 1 print(i) } 

Repeat-While Loop:

 var a = 0 repeat { a += 1 print(a) } while a < 10 

verifique los flujos de control en la guía del lenguaje de progtwigción Swift

Recibí el mismo error con este código:

 for (var i = 1; i != video.getAll().count; i++) { print("show number \(i)") } 

Cuando intentas solucionarlo con Xcode, no tienes suerte … Entonces necesitas usar el nuevo estilo rápido (para in loop):

 for i in 1...video.getAll().count { print("show number \(i)") } 

Para este tipo de bucle "para":

 for var i = 10; i >= 0; --i { print(i) } 

Puedes escribir:

 for i in (0...10).reverse() { print(i) } 

Blockquote

Use esto en su lugar

 if(myarr.count) { for i in 1...myarr?.count { print(" number is \(i)") } }