![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Сталкнулся с такой проблемой. Создаю некий класс-Block. На основе этого класса создаю еще классы вот например так:
Ошибка: Inconsistent accessibility: field type 'MainClassNS.MainClass.VersionBlock' is less accessible than field 'MainClassNS.MainClass.versionBlock Че за ошибка? Как ее исправить? -------------------- ![]() |
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 14 Всего: 32 |
Почитать в MSDN, что такое accessibility domain. -------------------- I don't need a reason being who I am... |
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 14 Всего: 42 |
class Block
замени на public class Block Добавлено через 45 секунд Или перенеси Block в MainClass. |
|||
|
||||
| Alekz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 5.2.2008 Где: Запорожье, Украин а Репутация: 1 Всего: 2 |
Не совсем В public классе открытое поле private типа... т.е. "клиент" может получить доступ к экземпляру, не имея доступа к типу. Это сообщение отредактировал(а) Alekz - 28.8.2008, 09:57 |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
QryStaL, если ты знаешь accessibility domain, мог бы в кратце объяснить? ;)
Манипуляции по перемещению классов, непомогли :( -------------------- ![]() |
|||
|
||||
| HalkaR |
|
|||
![]() Пуфыстый назгул ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2132 Регистрация: 8.12.2002 Где: В Москве Репутация: 14 Всего: 42 |
Alekz, да сорри, неправильно трактовал ошибку.
|
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 14 Всего: 32 |
Поле public, а тип VersionBlock private. Непонятно, зачем nested class. Его нужно или вынести из MainClass, или сделать public. -------------------- I don't need a reason being who I am... |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Ну а что такого. Я могу создать переменную private int index, например, вставить в класс public int Index { get{return index;}} так и тут хочу. Создать некий базовый класс блок. На его основе создать еще несколько классов, которые чем то будут отличаться. Вынес вложеный класс, ошибка та же. -------------------- ![]() |
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 14 Всего: 32 |
Ты путаешь наследование со вложенностью.
Ошибка не может быть та же, так как классы верхнего уровня не бывают private. -------------------- I don't need a reason being who I am... |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Оказывается может. Избавился от нее только если даю классу public и элементу тоже public Вообщем если я делаю унаследованый класс public, и создаю переменную типа унаследованного класса, то она тоже должна быть public. Мне вот это непонятно. -------------------- ![]() |
|||
|
||||
| QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 14 Всего: 32 |
Наоборот. Область видимости поля не может быть больше области видимости его типа. -------------------- I don't need a reason being who I am... |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Вот я тупанул, походу. Я то вот что думал:
Если я создаю класс внутри класса и делаю его паблик, то я могу получить доступ к этому классу из экземпляра, например так:
-------------------- ![]() |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |