#include <iostream>
using namespace std;
class Building {
private:
string adress_m;
int storeyCount_m;
bool quarantine_m;
public:
Building(string adress = "", int count = -1) {
adress_m = adress;
storeyCount_m = count;
}
void addStoreys(int count) {
storeyCount_m += count;
}
void quarantineOn() {
cout << "Quarantine: on";
cout << endl;
quarantine_m = 1;
}
void quarantineOff() {
cout << "Quarantine: off";
cout << endl;
quarantine_m = 0;
}
void quarantineCheck() {
cout << "Quarantine: ";
if(quarantine_m) {
cout << "on";
cout << endl;
} else {
cout << "off";
cout << endl;
}
}
string getAdress() {
return adress_m;
}
int getStorey() {
return storeyCount_m;
}
};
int main() {
Building build("dirt house", 1);
cout << build.getAdress() << " " << build.getStorey() << " storeys" << " " << endl;
build.quarantineCheck();
build.quarantineOn();
build.addStoreys(2);
cout << build.getAdress() << " " << build.getStorey() << " storeys" << " " << endl;
}
1. Ввод (чтение) данных. В любом языке оператор ввода читает текст в виде потока (последовательности) символов, получая их внутренние коды в соответствии с установленной таблицей кодировки. Далее, если эти данные должны быть присвоены, как указано в операторе ввода, числовым переменным, производится выделение последовательностей символов, представляющих собой изображение чисел и осуществляется перекодировка в двоичное представление чисел в соответствии с их типом (целые, с плавающей точкой) и размещение в нужном количестве байтов памяти.
2. Явное преобразование данных путем вызова процедур или функций конкретного языка. Например, в языке Паскаль это делает процедура Str.
3. Неявное преобразование данных, допустимое в некоторых языках, когда в выражении можно смешивать числовые данные и символьные строки, представляющие собой правильное изображение чисел, например 12.5+"3.7".