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

Для поля объекта запретить запись, но оставить чтение. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ 4 вопроса http://www.cyberforum.ru/cpp/thread309351.html
Здравствуйте, ответьте пожалуйста кто знает на 4 вопроса пожалуйста: 1)что означает в паскале with d do begin ----- и как заменить эту команду на С 2)что означает reset(f); -------- и как заменить эту команду на С
C++ Быстрая сортировка и объекты класса На днях столкнулся с такой задачей. Попробую ее сформулировать. Дан класс. class A { ... vector<double> x; vector<double> y; void output(); // вывод на экран ... } http://www.cyberforum.ru/cpp/thread309115.html
Односвязный список, запись и чтение из файла C++
Здравствуйте уважаемые форумчане. Имееться реализация односвязного списка из книги Дейтлов "Как программировать на С++" Нужно сделать запись, чтение и просмотр из файла, т.е. файл использовать как базу данных. Почему то не могу справиться с этим заданием, прошу вашей помощи. Программа реализует телефонный справочник. // test.cpp // Тестовая программа для класса List.
C++ прога при компиляции ругаеться на "unit1.h"
вся проблема в том,что у меня єтого файла нет,так как прога с нета качаная.можно ли его как нить востановить?? #include <vcl.h> #pragma hdrstop #include «Unit1.h» // – #pragma package (smart_init) #pragma resource «*.dfm» #include<math.h>
C++ Подсчитывание количество марок в коллекции http://www.cyberforum.ru/cpp/thread308139.html
День добрый. задали сделать задачу на 2х языках программирования( на паскале и на си). на паскале я сделал, на си не могу( так только начинающий). помогите сделать эту программу на языке СИ. благодарю. ЭВМ используется при разборе коллекции марок. Составить программу, подсчитывающую число марок по спорту, по искусству и прочих. Подсчитать общее количество марок в коллекции. Использовать...
C++ не работают условия кроме sravnenie[i].kozer==1 && sravnenie[j].kozer==1 int sravnenie_kart_v_massive_sravnenie(KARTA *kart,KARTA *sravnenie,int *nsravnenie,int *sravnenie11,int *sravnenie12,int *fsravnenie) {int n,i,j,f1=0,f2=0; n=0; for(i=*sravnenie11;i<9 && f1==1;i=i+2) for(j=*sravnenie12;j<10 && f2==1;j=j+2) if(sravnenie.kozer==5 && sravnenie.kozer==1) {n=n+1; f1=1; f2=1; printf("%d пара карт бита\n",n); подробнее

Показать сообщение отдельно
skvor
640KB мне хватило на всё.
118 / 49 / 2
Регистрация: 07.06.2009
Сообщений: 442
31.05.2011, 22:08  [ТС]     Для поля объекта запретить запись, но оставить чтение.
Цитата Сообщение от asics Посмотреть сообщение
: bb(&i)
Спасибо, работает. Решена проблема, над которой я плющил моск, наверное, год. Теперь хочу найти описание инициализации полей в классе. В моих книжках, чето такого нет.

И вот ещё подумалось, а существуют языки, в которых кроме private и public, есть разделы или синтаксис, который прямо указывает на разрешение записи и чтения полей данных. Т.е. такое описание, которое указывает на возможность использования поля класса в операторах присваивания слева и/или справа.

Добавлено через 15 минут
Чёрт, даже неловко, что я так тупил. Теперь можно вообще упростить тот быдлокод до использования ссылок вместо указателей.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class A
{ private:
    int b;
  public:
    A(int i) : bb(b), b(i) {}
    const int &bb;
};
 
int main(int argc, char *argv[], char *env[])
{ system("clear");
 
  A V(1234);
  std::cout<<V.bb<<std::endl; //Чтение возможно
  //V.bb=666; // Ура! Невозможно!
 
  return 0;
}
 
Текущее время: 20:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru