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

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

Войти
Регистрация
Восстановить пароль
 
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
#1

инициализация значений - C++

03.03.2012, 21:52. Просмотров 438. Ответов 9
Метки нет (Все метки)

Всем привет!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include<iostream.h>
#include<conio.h>
#include<windows.h>
#include<math.h>
#include<string>
 
class Money
{
        private:
    long rub;           //long int
    unsigned char cop;
        public:
    void Init(long i_rub,unsigned char i_cop);
};
 
void Money::Init(long i_rub, unsigned char i_cop)
{
    i_rub=rub;
    i_cop=cop;
    cout<<"Инициализация значений: "<<i_rub<<" "<<i_cop<<endl;
}
 
 
 
int main()
{
    Money money;
 
    money.Init(21,12);
    
    getch();
    return 0;
}
А правильно ли все работает?
Проверьте пожалуйста, заранее всем спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2012, 21:52     инициализация значений
Посмотрите здесь:

Инициализация и вывод значений массива - C++
Задача(ликвидировать мое незнание ) Всем привет! Столкнулся с проблемой, давно у нас не было си,а теперь опять ввели.А я мало, что...

Инициализация класса, возврат значений - C++
Сама задача: Реализовать класс Rectangle. Класс должен хранить координаты, а так же длину и ширину прямоугольника. Предусмотреть...

Инициализация значений переменной класса и возведение их в квадрат - C++
Вот программа: #include &lt;iostream&gt; using namespace std; class squares { int NUM,sqr; public: squares(int a, int...

Инициализация массива структур и форматированный вывод значений её членов - C++
Я написал маленькую программу инициализации массива структур и форматированного вывода значений её членов, но, и инициализация происходит с...

инициализация векторов - C++
Даны массивы ai={1,2,3}; ai2={1,2,5,6,7}; ai3={12,56,98}; vector&lt;int&gt;svec, Как присвоить их вектору

Инициализация в блоке if - C++
Всем привет. if ((auto pointPos = wcsrchr(buffer, L'.')) != nullptr) *pointPos = '\0'; Есть код с ошибкой &quot;expected an...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
03.03.2012, 22:05     инициализация значений #2
не проще ли через конструктор?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
 
class Money
{
                private:
        long rub;                       //long int
        unsigned char cop;
                public:
        Money(long,unsigned );
};
 
Money::Money(long i_rub, unsigned i_cop)
{
        rub = i_rub;
        cop = i_cop;
        std::cout<<"Инициализация значений: "<<i_rub<<" "<<i_cop<<std::endl;
}
 
 
 
int main()
{
        Money money(21L,12);
        return 0;
}
Добавлено через 1 минуту
почему i_cop вы объявляете как char кстати?
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
03.03.2012, 22:30  [ТС]     инициализация значений #3
по заданию написано просто инициализировать, а что, через char неправильно?
R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
03.03.2012, 22:34     инициализация значений #4
Цитата Сообщение от Mr. Pyatachok Посмотреть сообщение
по заданию написано просто инициализировать
через конструктор и инициализировали
Цитата Сообщение от Mr. Pyatachok Посмотреть сообщение
а что, через char неправильно?
если вы собираетесь хранить в i_cop символ, то правильно. Если число, то нет.
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
03.03.2012, 22:44  [ТС]     инициализация значений #5
вообще-то я собираюсь хранить символ,а вот перевод другое дело
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,736
03.03.2012, 22:48     инициализация значений #6
Цитата Сообщение от R136a1 Посмотреть сообщение
Сообщение от Mr. Pyatachok
а что, через char неправильно?
если вы собираетесь хранить в i_cop символ, то правильно. Если число, то нет.
с какого перепугу unsigned char значение 0 - 255 а копеек то всего 0-99 в диапазон влазим
другое дело что экономии памяти скорее всего не получится память выравняется на 4 байта (если мы про Intel pentium и Windows) посему используй что int что char размер класса будет один

Добавлено через 41 секунду
Цитата Сообщение от Mr. Pyatachok Посмотреть сообщение
вообще-то я собираюсь хранить символ
символ чего???
тогда уж строку
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
03.03.2012, 22:51  [ТС]     инициализация значений #7
Раз про перевод заговорили, то подскажите пожалуйста, как при вводе через одну функцию (и в этой же функции перевод) работать с рпеобразованным значением?
Или предложите альтернативу, а то я, может быть, и не прав
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<iostream.h>
#include<conio.h>
#include<windows.h>
#include<math.h>
#include<string>
 
class Money
{
        private:
    long rub;           //long int
    unsigned char cop;
        public:
    void Read();
    void Init(long i_rub,unsigned char i_cop);
};
 
void Money::Init(long i_rub, unsigned char i_cop)
{
    rub=i_rub;
    cop=i_cop;
    cout<<"Инициализация значений: "<<i_rub<<" "<<i_cop<<endl;
}
 
void Money::Read()
{
    float number;
 
    cin>>number;
    int(rub)=(int)number;
    int(cop)=floor((100*(number-rub))+0.5);
 
    cout<<rub<<endl;
    cout<<cop;
}
 
int main()
{
    Money money;
 
    money.Init(21,48);
    money.Read();
 
    getch();
    return 0;
}
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
03.03.2012, 22:51     инициализация значений #8
Цитата Сообщение от ValeryS Посмотреть сообщение
символ чего???
Ну вероятно символ валюты же
r - рубль
d - долЯр
b - "зайчики"
Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
03.03.2012, 22:54  [ТС]     инициализация значений #9
да символ неизвестного (хоть чего, без разницы), по заданию автор ничего про это не упомянул, да и черт с ним, для этого случая я if напишу
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2012, 22:55     инициализация значений
Еще ссылки по теме:

Инициализация по стандарту C++11 - C++
Здравствуйте ув. форумчане. Читаю Прата С. Язык программирования С++ Лекции и упражнения 2012. В разделе &quot;Инициализация в C++11&quot;,...

Инициализация указателя - C++
Написал такой код: #include &lt;iostream&gt; using namespace std; int main() { int n=10; int* a=new int ;

Инициализация переменных С++11 - C++
Форумчане, подскажите в чем существенная разница ставить знак равенства &quot;=&quot; или нет (я понимаю что ее нет, но ведь для чего-то это сделано,...

Инициализация класса - C++
Ругается : C2143, C4430, C2371 class SpaceShip { public: Tria2* SStria;// 0, 10, -5, 20, 5, 20 void init (GLint p1, GLint...


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

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,736
03.03.2012, 22:55     инициализация значений #10
Цитата Сообщение от Gepar Посмотреть сообщение
Ну вероятно символ валюты же
ты вообще объявления класса читал
Цитата Сообщение от Mr. Pyatachok Посмотреть сообщение
long rub; //long int
unsigned char cop;
rub рубли
cop копейки
где здесь символ валюты??
Yandex
Объявления
03.03.2012, 22:55     инициализация значений
Ответ Создать тему
Опции темы

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