Ich verwende die Apple Reachability-Klasse aus dem Apple-Beispielcode Reachability
In Xcode 4.2 und dem neuen Apple 3.0 Compiler bekomme ich in dieser Klasse eine Warnung, dass
+ (Reachability*) reachabilityWithAddress: (const struct sockaddr_in*) hostAddress;
Die Deklaration von 'struct sockaddr_in ' ist außerhalb dieser Funktion nicht sichtbar *
Ich bin nicht gut in klassischem C%), daher verstehe ich nicht, wie ich diese Warnung beheben kann oder ob ich sie überhaupt ignorieren kann.
Vielen Dank
Antworten:
Fügen Sie
#import <netinet/in.h>
Reachability.h hinzu, um damit durchzukommenquelle
#include
nicht#import
. Aufgrund subtiler Unterschiede zwischen C- und Objective-C-Headern sollten Sie nur#import
Objective-C verwenden. Pure C sollte weiterhin verwendet werden#include
.#import
verhindert, dass ein Header zweimal in eine Kompilierungseinheit gebracht wird.#include
wird es zulassen (und dann werden Schutzmakros verwendet, um doppelte Symbole zu verhindern.) Es gibt einige Header, die voraussichtlich zweimal eingefügt werden.