Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- struct Cls {
- Cls(char c, double d, int i);
- private:
- char c;
- double d;
- int i;
- };
- Как видно, все поля этого класса закрытые, ваша задача реализовать несколько функций, которые дают полный доступ к этим полям (см. шаблон кода), несмотря на то, что они закрытые.
- */
- // Эта функция должна предоставить доступ к полю c объекта cls.
- // Обратите внимание, что возвращается ссылка на char, т. е.
- // доступ предоставляется на чтение и запись.
- char &get_c(Cls &cls) {
- return *(char*)(&cls);
- }
- // Эта функция должна предоставить доступ к полю d объекта cls.
- // Обратите внимание, что возвращается ссылка на double, т. е.
- // доступ предоставляется на чтение и запись.
- double &get_d(Cls &cls) {
- return *(double*)((char*)(&cls)+8);
- }
- // Эта функция должна предоставить доступ к полю i объекта cls.
- // Обратите внимание, что возвращается ссылка на int, т. е.
- // доступ предоставляется на чтение и запись.
- int &get_i(Cls &cls) {
- return *(int*)((char*)(&cls)+16);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement