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

Можно ли получить ссылку на экземпляр класса по полю этого экземпляра - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задана матрица чисел: c [11] [11] Вычислить сумму элементов, образующих символ http://www.cyberforum.ru/cpp-beginners/thread706207.html
Помогите пожалуйста с написанием кода. Задача 1. Задана матрица чисел: c Вычислить сумму элементов, образующих символ --*--------- *-- ----*----- *---- ------*--*------ --**********-- -----* --*------- ----* ----*------
C++ как к двум RadioButton присвоить значения одной переменной? как к двум RadioButton присвоить значения одной переменной? если можно по подробнее... программа через switch http://www.cyberforum.ru/cpp-beginners/thread706196.html
Создание библиотеки .h C++
Я только начал учить программированию, и меня заинтересовало как создать свою библиотеку с расширением .h! Подскажите с чего начать создавать, не писать в самом файле, а как создать этот файл с расширением .h?
Описать структуру в соответствии с заданием. C++
Описать структуру с именем ZNAK содержащие следующие поля: -фамилия и имя -знак зодиака -дата рождения(массив из 3-х чисел) Написать программу выполняющую следующие действия: -ввод с клавиатуры данных в массив состоящих из 8 элементов типа ZNAK; записи должны быть упорядочены по знакам зодиака -вывод на экран информации о людях родившихся в месяц значения которого введено с клавиатуры...
C++ Работа со строками (записать в другую строку первое слово и поставить пробел) http://www.cyberforum.ru/cpp-beginners/thread706179.html
Помогите разобраться, мы вводим с клавиатуры строку,строка из нескольких слов отделяемых ";" как записать в другую строку первое слово и поставить пробел,я так пробывал но не работает cout<<"vvedite stroku - "; cin.getline(s1,50); for (int i=0;i<strlen(s1);i++) while(s1!=';') s2=s1; cout<<s2;
C++ В каждой строке матрицы F(k,k) элемент, лежащий на главной диагонали, если это простое число В каждой строке матрицы F(k,k) элемент, лежащий на главной диагонали, если это простое число,заменить значением минимального элемента всей матрицы. подробнее

Показать сообщение отдельно
ValeryS
Модератор
6375 / 4841 / 443
Регистрация: 14.02.2011
Сообщений: 16,045
28.11.2012, 22:56     Можно ли получить ссылку на экземпляр класса по полю этого экземпляра
Цитата Сообщение от stan98 Посмотреть сообщение
staticMethodB получает ссылку экземпляра класса A, можно ли как-нибудь получить ссылку на экземпляр A если есть ссылка на поле экземпляра A при вызове staticMethodA
что то я ничего не понял
но могу сказать что статическая функция ничего не знает про экземпляры класса (это грубо говоря глобальная функция)
и вот так вот не пойдет
C++
1
2
3
4
5
6
class A
{
 int b;
public:
 static void fncSt(){ b=5;};
}
поскольку она не знает кто такой b к какому экземпляру он принадлежит и где он в памяти находится
для простых функций этот вопрос снимается потому что ей передается неявный параметр this, а статику он не передается,посему его нужно передать явно
например так
C++
1
2
3
4
5
6
class A
{
 int b;
public:
 static void fncSt(A* aa){aa-> b=5;};
}
вызывать например так
C++
1
2
A aaa;
A:: fncSt(&aaa)
 
Текущее время: 06:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru