Использование статических переменных-> Цель C - PullRequest
0 голосов
/ 06 мая 2011

Я получаю предупреждения при объявлении и использовании статических переменных.

static int m_chSequenceChar; 

@interface data : NSObject
{

}
-(id)init;
-(void)initialze;
@end

@implementation data

- (id)init
{

 m_chSequenceChar= 0;
}

+ (void)initialize
{

  m_chSequenceChar= 0;

}

@end

Предупреждение: 'm_chSequenceChar' определено, но не используется

РЕДАКТИРОВАНИЕ:

data.h
------

static int m_nMessageId;      //Message ID
static int m_uSessionId;      //Session ID
static int m_chSequenceChar;  //Sequence ID

static int* m_pData;          //Integer buffer to carry data
static int m_uDataSize;       //Datasize

@interface data : NSObject {

    @public


}


data.m
------

@implementation data

+ (void)initialize
{
    m_uSessionId    = 0;
    m_chSequenceChar= 0;

    m_nMessageId    = 0;
    m_pData         = 0;              
    m_uDataSize     = 0; 

}
- (id) initWithID:(int) uMessageId withData:(id)pData withSize:(size_t) uDataSize
{
        if(self=[super init])
        {
           // Initialize the member variables
            m_uSessionId    = 0xFF;
            m_chSequenceChar= 10;

           // Initialize values from derived class
            m_nMessageId    = uMessageId;
            m_pData         = (int*)pData;              
            m_uDataSize     = (int)uDataSize;            
        }
        NSLog(@"Data size:%d",uDataSize);
        NSLog(@"m_pData:%d",m_pData);
        NSLog(@"pData:%d",pData);

     data* dat = [data alloc];
     return self;   
}

@end

1 Ответ

1 голос
/ 06 мая 2011

Это потому, что вы не читаете значение m_chSequenceChar в своем коде. Если вы не читаете его, вы его не используете, отсюда и предупреждение.

Кроме того, вы уверены, что хотите сбросить m_chSequenceChar на 0 всякий раз, когда экземпляр data получает -init? В общем, +initialize должно быть достаточно. И, фактически, вам даже не нужно явно устанавливать его на 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...