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

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

Войти
Регистрация
Восстановить пароль
 
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
#1

Передача объекта по указателю в функцию - C++

03.10.2012, 20:31. Просмотров 894. Ответов 4
Метки нет (Все метки)

Здравствуйте. При передаче объекта в метод другого объекта по указателю, метод получает непонятно что.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class SomeObj {
   .........
 
   Add(Info*);
   .........
}
 
 
SomeObj someObj;
 
Info * inf = new Info;
 
someObj.Add(inf);
Пытаюсь в теле Add обращаться к inf, вылетаю с EAccessViolation
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2012, 20:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Передача объекта по указателю в функцию (C++):

Передача массива в функцию по указателю - C++
Помогите с заданием нужно передать массив в функцию по указателю

Передача вектора в функцию по указателю - C++
Есть функция с таким прототипом: void Split(const string&amp; text, char delimeter, const vector&lt;string&gt;* pPars); как воспользоваться...

Передача в функцию по ссылке или указателю - C++
Гуру C++, как предпочтительнее делать?:) void f1(int &amp;a) { a = 5; } void f2(int * a) {

Передача параметра по указателю в виртуальную функцию - C++
Добрый вечер и с наступающим всех Новым Годом! условие задачи такое: Мышь (абстрактный) Вход: x,y – начальные s – чувствительность ...

Передача аргументов в функцию по ссылке и указателю - C++
Чем отличается передача по ссылке от передачи по указателю аргументов в функцию?

Указатели и массивы. Передача массива в функцию по указателю - C++
Как передать массив в функцию,которая должна заполнить этот массив ? Вот,что я составил, но компилятор ругается: #include &quot;stdafx.h&quot; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
08.10.2012, 02:19 #2
besh]<a, по этому коду всё нормально. Может, непонятно что получается в конструкторе класса того объекта, который вы передаёте (Info то бишь)?
0
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
10.10.2012, 12:45  [ТС] #3
silent_1991,
Я сначала эти классы разработал и протестировал в консольном проекте. Проверил количество вызовов конструкторов и деструкторов, они равны. В консольном проекте все работало. Затем добавляю хедеры в оконное приложение Builder'a(2010) и вылетаю.
Я бился над этой проблемой 3 дня в итоге сделал так
C++
1
void Add(Info&)
Ну и пришлось изменить поле класса, убрать указатель и поставить обычную переменную.
0
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
10.10.2012, 15:37 #4
код в посте нормальный. а то, что вы не разобрались с тем, что же на самом деле происходит - это плохо. как бы фобия к указателям не развилась, которая потом приведет к хитрому коду, который написан ради того, чтобы избежать работы с ними. проблема скорее всего где-то в другом месте и возможно новый вариант решения лишь припрятал ее еще глубже. но это не значит что она не проявит себя.
0
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
11.10.2012, 16:52  [ТС] #5
У меня стоит пиратский Builder, и сейчас творятся ужасные вещи. При попытке сделать вывод в RichEdit1 зацикливается алгоритм, а если выводить RichEdit2, то все нормально.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.10.2012, 16:52
Привет! Вот еще темы с ответами:

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

Передача параметров в функцию по значению, по ссылке или по указателю - C++
Передача параметров в функцию по значению, по ссылке или по указателю. Чем отличаются эти 3 способа. И, если не сложно, привести...

Передача аргумента в функцию по значению, по ссылке, по указателю: в чём концептуальная разница? - C++
Доброго всем здравия, прошу прощения, что достал уже всех этой темой. #include &lt;iostream&gt; using namespace std; int my_attemp(int...

Передача объекта в функцию или функцию друга - C++
Здравствуйте, уважаемые программисты :) К примеру есть такой код. #include &lt;iostream&gt; using namespace std; class My_Class1 { ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.10.2012, 16:52
Ответ Создать тему
Опции темы

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