Domanda

Quando si utilizza un metodo Obiettivo C iPhone che accetta CGFloats, ad es [UIColor colorWithRed:green:blue:], è importante aggiungere AF a argomenti costanti per specificarli esplicitamente come galleggianti, ad esempio, dovrei sempre digitare 0,1F anziché 0,1 in tali casi? Oppure il compilatore lancia automaticamente 0,1 (che è un doppio in generale) a 0,1F (che è un galleggiante) al momento della compilazione? Non desidero che questi cast si verifichino in tempo di esecuzione perché avrebbero prestazioni inutilmente per fare la performance.

Grazie in anticipo

MrMage

È stato utile?

Soluzione

Non è importante; Non romperà nulla per utilizzare una costante a doppia precisione in cui si prevede una costante a singolo precisione.

Tuttavia, se hai attivato l'avvertimento sulle conversioni implicite da 64 bit a 32 bit e stai costruendo per architetture a 32 bit (che credo includa l'iPhone), allora vorrai usare le costanti a singola precisione semplicemente Per evitare di ottenere quell'avvertimento.

(In alternativa, è possibile impostare tale impostazione esplicitamente, con una condizione di architettura che lo attiva per architetture a 64 bit. Ma questo attualmente conta solo se stai utilizzando anche parte del tuo codice in un'applicazione MAC.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top