Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

проверка инициализации

1.9K
27 мая 2007 года
lexalex
59 / / 23.12.2003
Привет! Можно ли решить следующее:
в функцию передается указатель на объект, нужно узнать проинициализирован ли указатель и если да то выяснить проинициализирован ли объект.
 
Код:
//ex1
anyclass * pointer;
anyfunc(pointer);


 
Код:
//ex2
anyclass anyobj;
anyclass * pointer=&anyobj;
anyfunc(pointer);


 
Код:
//ex3
anyclass * pointer=new anyclass();
anyfunc(pointer);

Ф-я в зависимости от рез-та проверки может создать новый объект и возвратить на него указатель
3
27 мая 2007 года
Green
4.8K / / 20.01.2000
Используй умные указатели.
1.9K
28 мая 2007 года
lexalex
59 / / 23.12.2003
проблема в том, что я пишу только ф-ю, а к коду вызывающей программы доступа нет
1.6K
28 мая 2007 года
Vov4ick
476 / / 01.02.2007
Можно проверять указатель на ноль, предварительно занулив его перед вызовом того, что создаёт объект, указывающий на него.
3
28 мая 2007 года
Green
4.8K / / 20.01.2000
В общем случае можно узнать отличен ли указатель от нуля. Проинициализирован ли он валидным значением - узнать нельзя.
Проинициализирован ли объект в общем случае так же узнать нельзя, для этого должна быть доп инф., например, поле соотв. объекта.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог