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

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

Войти
Регистрация
Восстановить пароль
 
CyberGudvin
1 / 1 / 0
Регистрация: 27.09.2013
Сообщений: 88
#1

При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему? - C++

18.05.2014, 00:39. Просмотров 279. Ответов 3
Метки нет (Все метки)

Структура Test описана в классе ABC:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class ABC{
struct Test {
    int get_i() { return i; }
    void put_i(int j) { i = j;}
    private:
    int i;
        };
public:
        Test* s;
    void SetP(){
        s->put_i(10);
    }
 
};
 
int _tmain(int argc, _TCHAR* argv[])
{
    ABC abc;
    abc.SetP();
    
    system("pause");
    return 0;
}
Выходит ошибка во время работы программы:
Необработанное исключение по адресу 0x00AD47B9 в SecondProject.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0xCCCCCCCC.

Что я делаю нетак?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2014, 00:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему? (C++):

Нарушение прав доступа при обращении к члену класса - C++
Появилась проблема с нарушением прав доступа к памяти и не знаю как её обойти, мне необходимо использовать функцию Graphics::Update() из...

Необработанное исключение: нарушение прав доступа при записи - C++
Есть функция ввода текста. Текст с неизвестным количеством и длиной строк. При отладке прерывается и выдает: "Необработанное...

Вызвано исключение по адресу 0x01361A1E в Matrix 1.0.exe: 0xC0000005: нарушение прав доступа при записи - C++
Вызвано исключение по адресу 0x01361A1E в Matrix 1.0.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0xCDCDCDCD. Если для...

нарушение прав доступа при записи. объясните, почему? и как избежать? - C++
void Stroka::F1(char*word) { char *point; if((point=strstr(data,word))) { strrev(word); } } нарушение прав доступа при...

Необработанное исключение по адресу, нарушение прав доступа при записи по адресу - C++
вот само задание: Авиарейсы (номер рейса, пункт назначения, время вылета, дата вылета, стоимость билета, количество мест). Выбор по дате...

Необработанное исключение: "Нарушение прав доступа при записи" - C++
Подскажите в чём проблемма происходит ошибка при выполнение программы #include <iostream> #include <string> using namespace std; ...

3
schdub
2963 / 1308 / 241
Регистрация: 19.01.2009
Сообщений: 3,441
Завершенные тесты: 1
18.05.2014, 01:15 #2
CyberGudvin, s не проинициализирована (строка 9), а вы разименовываете данный указатель.
0
CyberGudvin
1 / 1 / 0
Регистрация: 27.09.2013
Сообщений: 88
18.05.2014, 01:32  [ТС] #3
Не понимаю что вы имеете ввиду. Напишите пожалуйста как надо в коде.
0
zss
Модератор
Эксперт С++
6628 / 6190 / 2048
Регистрация: 18.12.2011
Сообщений: 16,140
Завершенные тесты: 1
18.05.2014, 09:33 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
struct Test 
{
    int get_i() { return i; }
    void put_i(int j) { i = j;}
private:
    int i;
};
class ABC
{
        Test* s;
public:
     ABC(){s=new Test;}
     ~ABC(){delete s;}
    void SetP()
    {
        s->put_i(10);
    }
};
0
18.05.2014, 09:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2014, 09:33
Привет! Вот еще темы с ответами:

Исправить ошибку: необработанное исключение по адресу, нарушение прав доступа при записи по адресу - C++
Помогите, пожалуйста, исправит ошибку. Необработанное исключение по адресу 0x77D88E19 (ntdll.dll) в Lab11.exe: 0xC0000005: нарушение...

Исключение Нарушение прав доступа при чтении - C++
Есть такое задание - создать 2 класса Класс -символ, c печататью свое знач и ответом на запрос о значении своего символьного поля; ...

Необработанное исключение. Нарушение прав доступа при чтении - C++
Ребят помогите. В общем есть программа, открывает один файл, ищет в нем последовательности, заменяет на другие. В консоли все прекрасно...

Необработанное исключение по адресу 0x008B94C5. 0xC0000005: нарушение прав доступа при чтении по - C++
Здравствуйте! Функция должна искать локальные минимумы массива. То есть это элементы,которые меньше своих соседей. Дело в том,что функция...


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

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

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