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

Никогда не использовать конструктор с параметрами? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Коммандер на С++ с исходным кодом для Visual Studio http://www.cyberforum.ru/cpp-beginners/thread800969.html
Добрый день, уважаемый All. Посоветуйте программу на С++ с "хорошим" исходным кодом, написанным под Visual Studio, которую можно взять для изучения. Коммандер - подойдет. )) Я начинающий программист прикладного уровня с опытом работы на VBA, Java, SQL, PHP, Turbo Pascal под DOS. Мне предстоит переносить старые программы многолетней давности под новые ОС. Был выбран С++ под Visual Studio (не С#...
C++ почему то не переводит на другую строку cout << "введенный пункт назначения:" << a[i].pn << ' ' ; cout << "введенный пункт назначения:" << a[i].num struct Train { char pn ; unsigned int num; char time ; }; void Copy (Train &pest, Train bust) //Вспомогательная функция для сортировки (копирование данных из src в dest) { strcpy (pest.pn, bust.pn); strcpy (pest.time, bust.time); http://www.cyberforum.ru/cpp-beginners/thread800941.html
C++ Написать программу, которая печатает таблицу двоичных, восьмеричных и шестнадцатеричных эквивалентов десятичных чисел в диапазоне от 1 до 256
Нужно написать программу, которая печатает таблицу двоичных, восьмеричных и шестнадцатеричных эквивалентов десятичных чисел в диапазоне от 1 до 256.
out.close выдаёт ошибку C++
#include<fstream> #include<iostream> #include<cstdlib> #include<ctime> #include<conio.h> using namespace std; int main() {
C++ Задача с интервалами http://www.cyberforum.ru/cpp-beginners/thread800924.html
Необходимо из excel вытащить числовые данные. Нужна проверка что бы элементов было минимум 50. Далее нужно разбить массив на одинаковые интервалы (примерно на 3-5). В каждом интервале нужно проверить, что бы было более 5 элементов. То есть, например, числа от 0 да 100 есть, мы их разбиваем на 5 интервалов (0-20,20-40,40-60,60-80,80-100). И необходимо посчитать сколько чисел попало в интервалы (в...
C++ Найти ошибку. Записать 20 целых чисел в массив. Переписать отрицательные в массив А, а положительные в Б Доброго времени суток. Записать 20 целых чисел в массив А. Переписать отрицательные из них подряд в массив В, а положительные - в массив C. Буду благодарен. #include <iostream> #include <cmath> using namespace std; int main() {int A; int B; int C; подробнее

Показать сообщение отдельно
nefton
44 / 20 / 5
Регистрация: 28.02.2013
Сообщений: 184
05.03.2013, 10:52     Никогда не использовать конструктор с параметрами?
Если я захочу чтоб в одном классе был вложен другой класс

Не по теме:

например есть класс "бумажник"
а класс "человек" среди своих данных содержит экземпляр класса "бумажник"


То обнаружу что я не могу передать его конструктору параметры.
а могу лишь написать:
C++
1
2
3
4
5
6
class c_Chelovek {
 
public:
    c_Chelovek();
    c_Bumaznik bumaznik;
}
При этом вызовется именно конструктор c_Bumaznik() без параметров.

Если же я захочу написать функцию типа c_Chelovek::AddBumaznik(int dengi);
и в ней вызвать конструктор бумажника с параметрами - то ничего ни выходит.
Типа обьект уже создан.

Отсюда делаю далеко идущие выводы.
Вот пишу я класс. Возможно когда то я или кто то захочет использовать его экземпляр внутри своего класса.
тогда у меня один правильный выход:
-писать конструктор без параметров
-писать функцию класса Init(params); //Функцию инициализации класса с параметрами

Я чтото упустил из виду?

Добавлено через 12 минут
Или же так не делают. А надо по хитрому.
- заводить переменную - указатель на обьект "бумажник"
- в функции c_Chelovek::AddBumaznik(int dengi) выделять оператором new новый экземпляр класса "бумажник"
при этом ему можно сообщать параметры конструктора
и в переменную(указатель) писать адресс вновь созданого обьекта
и с ним потом както работать
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru