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

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

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

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

18.05.2014, 00:39. Просмотров 254. Ответов 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.

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

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

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

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

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

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

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

Необработанное исключение в "0x776315de" в "c++1.exe": 0xC0000005: Нарушение прав доступа при записи "0x40e000 - C++
Здравствуйте. Только начал работать с динамическим массивом, но не могу понять почему появляется эта ошибка. Работаю с библиотекой sfml....

Необработанное исключение в "0x104b2288" в "Matrix.exe": 0xC0000005: Нарушение прав доступа при записи "0xcdcd - C++
Вот такая ошибка!

Нарушение прав доступа при записи - C++
Всем привет, нужно было сделать справочник, atoi(a) выделяет как ошибку, ЧЯДНТ? #include <iostream> #include <fstream> #include...

Нарушение прав доступа при записи - C++
Создаю свой класс ошибок следующим образом: class SecureTransportException { private: SecureLibraryErrorCode errorCode_; ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
schdub
2940 / 1284 / 238
Регистрация: 19.01.2009
Сообщений: 3,358
Завершенные тесты: 1
18.05.2014, 01:15     При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему? #2
CyberGudvin, s не проинициализирована (строка 9), а вы разименовываете данный указатель.
CyberGudvin
1 / 1 / 0
Регистрация: 27.09.2013
Сообщений: 82
18.05.2014, 01:32  [ТС]     При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему? #3
Не понимаю что вы имеете ввиду. Напишите пожалуйста как надо в коде.
zss
Модератор
Эксперт С++
6281 / 5884 / 1905
Регистрация: 18.12.2011
Сообщений: 15,093
Завершенные тесты: 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);
    }
};
Yandex
Объявления
18.05.2014, 09:33     При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему?
Ответ Создать тему
Опции темы

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