Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
igorbelykh
8 / 8 / 2
Регистрация: 01.03.2013
Сообщений: 85
#1

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

12.03.2013, 14:06. Просмотров 586. Ответов 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
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу проверить переменную класса на соответствие NULL (C++):

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

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

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

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

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

Не могу получить переменную из другого класса - PHP ООП
Здравствуйте. Учу ООП. Создаю сайт. В каждом экшене сайта есть переменная public $page_title; которой на программном уровне я присваиваю...

7
StasGamilton
Эксперт по пяченькам
67 / 67 / 1
Регистрация: 16.08.2011
Сообщений: 258
12.03.2013, 14:13 #2
Посмотрите, что содержится в этой переменной. Проверьте вызывается ли нужный конструктор (присваивается ли pGetQuery значение NULL), и нигде ему еще чего-нить не назаначается. Тут вообще-то не помешал бы код класса и использование его.
0
srg_btl
34 / 34 / 2
Регистрация: 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 / 2
Регистрация: 01.03.2013
Сообщений: 85
12.03.2013, 14:26  [ТС] #4
Цитата Сообщение от StasGamilton Посмотреть сообщение
Посмотрите, что содержится в этой переменной. Проверьте вызывается ли нужный конструктор (присваивается ли pGetQuery значение NULL), и нигде ему еще чего-нить не назаначается. Тут вообще-то не помешал бы код класса и использование его.
Конструктор вызывается. Больше нигде пока не участвует данная переменная, поэтому случайное присвоение другого значения исключено.
0
srg_btl
34 / 34 / 2
Регистрация: 21.02.2013
Сообщений: 90
12.03.2013, 14:39 #5
Ну тогда наверное ошибка где-то после этого
C++
1
if(pGetQuery != NULL)
возможно не правильно блок выделил или еще что-то в этом роде, т.к. судя по тому что ты написал все нормально должно работать
0
alsav22
5426 / 4821 / 442
Регистрация: 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 / 2
Регистрация: 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
Привет! Вот еще темы с ответами:

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

Не могу использовать переменную с одного класса в другом! - Java SE
Проблема следующая. Есть три класса Первый главный public class LaunchUrlIndicator { public static void main(String args) { ...

Не могу вывести в TextBox переменную Int из другого класса - C#
Не могу вывести в TextBox переменную Int из другого класса using System; using System.Collections.Generic; using...

Проверить соответствие скобок - Turbo Pascal
ВВ арифметическом выражении используют круглые дужки. Разработать програмиу что проверяет соответствие дужек&quot;(&quot;и&quot;)&quot;


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

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

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