Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Lagilo
5 / 5 / 3
Регистрация: 17.04.2014
Сообщений: 153
#1

Невозможно обратиться к private член, объявленному в классе - C++

17.10.2015, 14:58. Просмотров 349. Ответов 4
Метки нет (Все метки)

View.h
C++
1
2
3
4
5
6
7
8
9
10
#pragma once
#include "Model.h"
class View
{
private:
    ModelClass model;
public:
    View(ModelClass modelClass);
    ~View(void);
};
View.cpp
C++
1
2
3
4
5
6
7
#include "View.h"
View::View(ModelClass model)//почему тут ошибка???
{
}
View::~View(void)
{
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2015, 14:58
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Невозможно обратиться к private член, объявленному в классе (C++):

Невозможно обратиться к private член, объявленному в классе "Complex"
выдавало ошибку "невозможно обратиться к private член, объявленному в классе...

Невозможно обратиться к protected член, объявленному в классе "Counter"
typedef unsigned int uint; ...

Невозможно обратиться к private -члену
Подскажите пожалуйста,в чем проблема, из-за создания объекта компилятор выдает...

Ошибки в коде с вложеными классами: Невозможно обратиться к private члену
Здорова! Есть код: #include <iostream> using std::cout; #include...

Зачем в классе private?
Объясните пожалуйста кто-нибудь зачем в классе private? что он делает? и почему...

Как обратиться к функции поля объекта из private'a
Доброго времени суток! Юзаю SFML для отрисовки. Как обратиться к функции...

4
nmcf
6247 / 5559 / 2529
Регистрация: 14.04.2014
Сообщений: 23,375
17.10.2015, 15:02 #2
Конструктор пустой? Зачем тогда этот параметр?
0
Lagilo
5 / 5 / 3
Регистрация: 17.04.2014
Сообщений: 153
17.10.2015, 15:09  [ТС] #3
Он не будет пустым, конечно же.
C++
1
2
3
4
5
View::View(ModelClass model):this->model(model)//:View::model(model) - не знаю как правильно
{
   //или тут
   //this->model(model)//:View::model(model)
}
0
zss
Модератор
Эксперт С++
6959 / 6521 / 4139
Регистрация: 18.12.2011
Сообщений: 17,209
Завершенные тесты: 1
17.10.2015, 15:10 #4
C++
1
2
3
4
5
6
7
8
class View
{
private:
    ModelClass model;
public:
    View(ModelClass modelClass):model(modelClass){};
    //~View();
};
0
Lagilo
5 / 5 / 3
Регистрация: 17.04.2014
Сообщений: 153
17.10.2015, 17:49  [ТС] #5
А обязательно описывать в .cpp весь класс?
Т.е. в заголовочном файле я создал ссылки на переменные и т.п., а теперь в файле с кодом обратно все писать нужно что ли? Если обратно все писать нужно, то для чего вообще создается заголовочный файл? Почему нельзя его просто как то привязать к файлу исходного кода, чтобы одно и то же несколько раз не писать?

Добавлено через 11 минут
C++
1
2
3
4
5
6
7
8
9
class Vieww
{
private:
    ModelClass model;
public:
    Vieww(ModelClass modelClass):model(modelClass){};//IntelliSense: "ModelClass::~ModelClass()" недоступно 
 
    //~Vieww(void){}
};
Добавлено через 2 часа 18 минут
Все. Просто нужно было передавать ссылку на класс..)
0
17.10.2015, 17:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2015, 17:49
Привет! Вот еще темы с решениями:

Обращение к private полям в классе
Здравствуйте! Возник еще один вопрос.Как можно обращаться к private полям...

LNK2019: о private и public в классе
Всем суп, есть беда: // "NAbstractNumber.h" class NAbstractNumber{ ...

Необходим общий private static-член для всех классов, сгенерированных по шаблону
Здравствуйте! Мне необходим общий private static-член для всех классов,...

О правилах хорошего тона в C++: изменение данных из private секции класса А в классе В через указатель
#include <iostream> using namespace std; class A { int *a; public:...


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

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

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