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

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

Войти
Регистрация
Восстановить пароль
 
Lagilo
5 / 5 / 2
Регистрация: 17.04.2014
Сообщений: 140
#1

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

17.10.2015, 14:58. Просмотров 290. Ответов 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" - C++
выдавало ошибку "невозможно обратиться к private член, объявленному в классе "Complex"" я поменяла int n; private: double re; ...

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

Невозможно обратиться к private -члену - C++
Подскажите пожалуйста,в чем проблема, из-за создания объекта компилятор выдает ошибку. Класс Base-абстрактный #include "stdafx.h" ...

Ошибки в коде с вложеными классами: Невозможно обратиться к private члену - C++
Здорова! Есть код: #include <iostream> using std::cout; #include <afxwin.h> #define IDD_One 1 #define IDD_Two 2 #define...

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

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

4
nmcf
5677 / 4987 / 1700
Регистрация: 14.04.2014
Сообщений: 20,331
17.10.2015, 15:02 #2
Конструктор пустой? Зачем тогда этот параметр?
0
Lagilo
5 / 5 / 2
Регистрация: 17.04.2014
Сообщений: 140
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
Модератор
Эксперт С++
6568 / 6130 / 2021
Регистрация: 18.12.2011
Сообщений: 15,982
Завершенные тесты: 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 / 2
Регистрация: 17.04.2014
Сообщений: 140
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 полям в классе - C++
Здравствуйте! Возник еще один вопрос.Как можно обращаться к private полям класса во внешних функциях кроме как создания методов,которые...

LNK2019: о private и public в классе - C++
Всем суп, есть беда: // "NAbstractNumber.h" class NAbstractNumber{ NAbstractNumber(){}; virtual std::string toString(int...

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

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


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

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

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