Domanda

Sto avendo un problema davvero strano qui con Nsuinteger in IOS7,

Tutto è perfetto prima di IOS7, immagino che sia correlato al supporto a 64 bit in iOS7.

Il mio codice è come questo, molto semplice:

if (blah blah blah) {
    NSUInteger firstRow = 0;
    firstRow = ([self.types containsObject:self.selectedMajorType] ?
        [self.types indexOfObject:self.selectedMajorType] + 1 : 0);
    ...
}
.

Secondo la mia console,

[Self.Types ContieneObject: Self.Selectedmajorype] è True

[self.types indexofobject: self.selectedmajorype] +1 è 1 ,

Senza dubbio e IndexoFobject restituisce anche un Nsuinteger (secondo il documento Apple),

Ecco lo screenshot: Inserire la descrizione dell'immagine qui Ma Firstrow è sempre F King ** 0

Questo è così raccapricciante, non so cosa sta succedendo con Nsuinteger,

Qualcuno può aiutarmi?Grazie mille !!

____ Nuova ricerca____ Inserisci Descrizione dell'immagine qui

Immagino che questo sia il problema?È strano ..

È stato utile?

Soluzione

Ho provato a ricreare questo scenario ma ho sempre ricevuto il risultato atteso 1.

Ecco lo schermo:

Inserire l'immagine Descrizione qui

Ecco il Project , prova a eseguire questo e vedi se si affronta il problema.

PS.Stavo usando Xcode 5.1 e iPhone 64 bit Simulator.

============= Aggiornamento ================

Ecco alcune spiegazioni sui comandi LLDB che hai usato.

PO : Stampa l'obiettivo C Descrizione di un oggetto.

Stampa / P : valuta un'espressione generalizzata nel telaio corrente.Specificare il tipo di ritorno della funzione se non utilizzato nel programma.

Spero che questo screenshot ti aiuti a capire di più.

Inserire l'immagine Descrizione qui

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