Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
igorbelykh
8 / 8 / 3
Регистрация: 01.03.2013
Сообщений: 85
1

Не могу проверить переменную класса на соответствие NULL

12.03.2013, 14:06. Просмотров 629. Ответов 7
Метки нет (Все метки)

Здравствуйте.

Есть переменная класса
C++
1
private char *pGetQuery;
В конструкторе ей присваивается NULL
C++
1
pGetQuery = NULL;
При вызове метода класса пытаюсь проверить переменную
C++
1
if(pGetQuery != NULL)
Но проверка всегда выдает истину. Что неправильно делаю?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2013, 14:06
Ответы с готовыми решениями:

Проверить соответствие программы заданию
Здравствуйте. Я еще не очень разбираюсь в классах С++. Я даже не уверен в том,...

Проверить введённое пользователем число на соответствие условию
Напишите программу, которая позволяет вводить данные, использует вложенный...

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

Как получить private переменную класса, функцей членом другого класса
Игра змейка: Есть класс поле в котором содержится размеры поля: class...

Реализовать подсчет количества объектов класса, используя статическую переменную-член класса
как реализовать подсчет количества объектов класса (используя статическую...

7
StasGamilton
Эксперт по пяченькам
67 / 67 / 12
Регистрация: 16.08.2011
Сообщений: 249
12.03.2013, 14:13 2
Посмотрите, что содержится в этой переменной. Проверьте вызывается ли нужный конструктор (присваивается ли pGetQuery значение NULL), и нигде ему еще чего-нить не назаначается. Тут вообще-то не помешал бы код класса и использование его.
0
srg_btl
34 / 34 / 13
Регистрация: 21.02.2013
Сообщений: 90
12.03.2013, 14:25 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
 
class A
{
public:
  A():ptr(NULL) {}
  ~A() 
  { 
    if(ptr == NULL) 
    {
      cout << "Pointer NULL"; 
    }
    else
    {
    // Удаляем память
    ptr = NULL;
    }
  } 
private:
  char* ptr;
};
 
int main()
{
  A a;
 
  return 0;
}
Все отлично работает, кинь больше кода, где ты еще юзаешь эту переменую
0
igorbelykh
8 / 8 / 3
Регистрация: 01.03.2013
Сообщений: 85
12.03.2013, 14:26  [ТС] 4
Цитата Сообщение от StasGamilton Посмотреть сообщение
Посмотрите, что содержится в этой переменной. Проверьте вызывается ли нужный конструктор (присваивается ли pGetQuery значение NULL), и нигде ему еще чего-нить не назаначается. Тут вообще-то не помешал бы код класса и использование его.
Конструктор вызывается. Больше нигде пока не участвует данная переменная, поэтому случайное присвоение другого значения исключено.
0
srg_btl
34 / 34 / 13
Регистрация: 21.02.2013
Сообщений: 90
12.03.2013, 14:39 5
Ну тогда наверное ошибка где-то после этого
C++
1
if(pGetQuery != NULL)
возможно не правильно блок выделил или еще что-то в этом роде, т.к. судя по тому что ты написал все нормально должно работать
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
12.03.2013, 14:43 6
igorbelykh, чтобы что-то подсказать, нужно видеть код. Ясновидящих тут нет.
1
-=ЮрА=-
Заблокирован
Автор FAQ
12.03.2013, 15:08 7
Цитата Сообщение от alsav22 Посмотреть сообщение
чтобы что-то подсказать, нужно видеть код. Ясновидящих тут нет.
поддержу.
0
igorbelykh
8 / 8 / 3
Регистрация: 01.03.2013
Сообщений: 85
12.03.2013, 16:25  [ТС] 8
Все разобрался. Допустил ошибку: в конструкторе вызывал перегруженный конструктор. Соответственно срабатывал деструктор и все переменные удалялись.
0
12.03.2013, 16:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2013, 16:25

Конструктор класса не дает инициализировать переменную класса
Привет. Вот такой вот класс. Когда пытаюсь в конструкторе присвоить name и...

Проверить программу на соответствие числа открывающихся и закрывающихся круглых и фигурных скобок
Дан текстовый файл, содержащий программу на языке С++. Проверить эту программу...

Не могу создать переменную класса string
Всем привет! Проблема такая: создаю новый проект (обычный application),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru