La conversion implicite perd entier précision: "long long" à "NSInteger' (aka 'int')

Je suis en train d'affecter une variable de type "long" pour un type NSUInteger, Quelle est la bonne façon de le faire?

ma ligne de code:

expectedSize = response.expectedContentLength > 0 ? response.expectedContentLength : 0;

expectedSize est de type NSUInteger et le type de retour de response.expectedContentLength est de type 'long long'. La variable response est de type NSURLResponse.

L'erreur de compilation est le suivant:

Sémantique Question: conversion Implicite perd entier précision: "long
long' à 'NSUInteger' (aka "unsigned int")

  • Vous pouvez faire un cast explicite, ou avez-vous le savez et l'est de votre question au sujet de plus que le "comment"? Voici la ligne avec le cast explicite: expectedSize = response.expectedContentLength > 0 ? (NSUInteger)response.expectedContentLength : 0;
InformationsquelleAutor Firdous | 2012-05-16