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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.72
.4rray
8 / 8 / 0
Регистрация: 15.12.2010
Сообщений: 41
#1

ref class. Как правильно? - C++

17.05.2011, 20:25. Просмотров 4234. Ответов 2
Метки нет (Все метки)

ref class - ссылочный класс. Я использовал его не задумываясь в чем его суть.
Так вот, что имеется в виду под "ссылочный" ? (а ля public - "открытый").

Для наглядности пример:
C++
1
2
3
4
5
6
7
8
9
10
namespace Name {
 
    public ref class First
    {
    private:
            ref class Second
            {
            }
    }
}
Было бы замечательно получить комментарий об отношениях(ref на это как-то влияет?) приведенных выше классов.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2011, 20:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ref class. Как правильно? (C++):

Что такое ref class - C++
Здравствуйте, господа программисты! Не могли бы вы мне скинуть ссылочку на какой-нибудь сайт, учебник или тому подобное по тому, что...

Разъясните код пжлст(выдает ошибку:cannot convert from 'class std::list<class c_bullet *,class std::allocator<class c_bullet *> >::iterator' to 'int') - C++
Есть такие строки: std::list&lt;c_bullet*&gt; Bullets; ... for(auto i = Bullets.begin(); i != Bullets.end(); /**/) В строке цикла вот...

enum и class как составляющие другого class - C++
Как организовать ввод enuma с клавиатуры (51-я строка)? Как прикрепить класс date к employee в private? :wall: #include &lt;iostream&gt; ...

Rvalue ref как параметр функции. Странности с оптимизацией - C++
Дана одна безумно сложная, запутанная и непонятная функция:int f2(int&amp;&amp; a) { a = 6; return 4; } которая компилируется...

Работа с class ами. Заполнение дин. массива типа class - C++
Всем доброго времени суток! Это моя первая тема на этом сайте, поэтому если что извините меня (за неточности итд итп). Мне нужно...

Create a programm that creates an object of created class Time and tests the member functions of class - C++
Time Class Create a class called Time that might be used to represent time. 1. Your class should include three data...

2
gooseim
Эксперт С++
510 / 414 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
17.05.2011, 21:02 #2
обычный класс:
C++
1
2
3
CNonRef nonref1=0, nonref2=1, nonref3=3;
nonref1=nonref2;
nonref2= nonref3;
На выходе:
nonref1=1
nonref2=3

ссылочный класс:
C++
1
2
3
CNonRef nonref1=0, nonref2=1, nonref3=3;
nonref1=nonref2;
nonref2= nonref3;
На выходе:
nonref1=3
nonref2=3

Для не ссылочного класса это было бы так:
C++
1
CNonRef nonref2=1, &nonref1=nonref2, nonref3=3;
1
Ma3a
Эксперт С++
619 / 463 / 31
Регистрация: 28.01.2011
Сообщений: 605
17.05.2011, 21:07 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Когда вы создаете переменную ссылочного типа, то в действительности эта переменная представляет собой лишь указатель, который ссылается на объект, созданный на управляемой куче, отсюда и название. Ref в основном влияет только там, где нужно заботиться о проверке двух объектов на равенство и при копировании объектов. Иногда забывают о том, что если одной переменной ссылочного типа присвоить значение другой переменной ссылочного типа, то будут присвоены лишь указатели, а сами объекты останутся неизменными, то же самое и с равенством, нужно следить за тем, чтобы сравнивалось то, что нужно, а не просто указатели.
3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2011, 21:07
Привет! Вот еще темы с ответами:

Нужно объект типа класс проинициализировать с помощью перегруженного конструктора Class::Class( bool a ) - C++
Плиз помогите. Не знал, что я такой чайник.) Итак: есть два класса: CMyClass.h CMyClass.cpp и

vector<[class]> in class и перегрузка (ostream) - C++
Доброе всем время суток ) столкнулся с проблемой Есть у меня несколько классов и есть класс внутри которого созданы векторы хранящие...

Как правильно вписать функцию в h-файл и правильно её отразить в основной функции? - C++
Создать внешнюю библиотеку, в которой написана функция вывода символьного массива обратном порядке. Подключить данную библиотеку к ...

Объяснить причины ошибки "Extra qualification 'CLASS CONSTRUCTOR' and 'CLASS' has incomplete type" - C++
Согласно синтаксису, вроде все правильно, но ошибка... что не так? Ошибки компилятора ниже на рисунке... #include &lt;iostream&gt; ...


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

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

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