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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Dimarik__
 Аватар для Dimarik__
21 / 21 / 1
Регистрация: 29.04.2010
Сообщений: 444
#1

инкапсуляция - C++

03.03.2011, 15:20. Просмотров 1471. Ответов 1
Метки нет (Все метки)

Возможно ли определение пользовательского типа, чтобы им можно было пользоваться только внутри класса?
На например
class aaaa
{
private:
typedef int[5] matrInt;
private functionaaaaa(matrInt &tt);
}
ругался у меня компилятор на такое дело до тех пор, пока я определение пользовательского типа не вынес за пределы класса. Хотелось бы узнать, возможно ли вообще определение пользовательских типов внутри класса или нет.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2011, 15:20     инкапсуляция
Посмотрите здесь:

Инкапсуляция. C++
C++ Инкапсуляция в ООП и C++
C++ wxDev-C++ и инкапсуляция
Конструктор, деструктор, инкапсуляция C++
Инкапсуляция визуального компонента C++
Инкапсуляция. Создание класса C++
C++ Инкапсуляция. классы
C++ Наследование и инкапсуляция в C++
C++ инкапсуляция массива объектов
C++ Инкапсуляция строк
C++ Что такое инкапсуляция?
Инкапсуляция. Иерархия классов C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bigredcat
364 / 311 / 3
Регистрация: 24.02.2011
Сообщений: 1,512
Записей в блоге: 1
03.03.2011, 16:49     инкапсуляция #2
Цитата Сообщение от Dimarik__ Посмотреть сообщение
class aaaa
{
private:
typedef int[5] matrInt;
private functionaaaaa(matrInt &tt);
}
ругался у меня компилятор на такое дело до тех пор, пока я определение пользовательского типа не вынес за пределы класса.
Не понимаю, как он перестал ругаться, после вынесения такого typedef int[5] matrInt; за пределы класса
Но вот так можно.
C++
1
2
3
4
5
6
7
8
9
10
class A
{
private:
    typedef struct _matrix_int
    {
        int i[5];
    } matrix_int;
private:
    void function_matrix_int(matrix_int &mi) {}
};
Yandex
Объявления
03.03.2011, 16:49     инкапсуляция
Ответ Создать тему
Опции темы

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