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

Вопрос про конструктор и инициализвцию - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Krist_ALL
 Аватар для Krist_ALL
9 / 9 / 0
Регистрация: 01.02.2010
Сообщений: 317
14.10.2010, 13:56     Вопрос про конструктор и инициализвцию #1
C++
1
2
3
4
5
6
7
class test {
int a;
char name[10];
string name2;
public: test(int a,char* name,[B] ....[/B]) : a(a), [B].....[/B]{}
 
};
если стринг как параметр то что писать в прототипе?
и как быстро инициализировать чар и стринг? strcpy не хочу, мне нужен быстрый способ и как он кстати по нормальному называется?)

Добавлено через 2 часа 10 минут
upppppp
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2010, 13:56     Вопрос про конструктор и инициализвцию
Посмотрите здесь:

C++ Вопрос про outtextxy()
Вопрос про конструктор C++
C++ Вопрос про конструктор
Инициализация массива через конструктор. Вопрос. C++
Вопрос про конструктор класса по умолчанию C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2010, 05:28     Вопрос про конструктор и инициализвцию
Еще ссылки по теме:

Вопрос про табуляцию в C++ C++
Конструктор копирования(быстрый вопрос) C++
C++ Про конструктор копирования, оператор присваивания

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

Или воспользуйтесь поиском по форуму:
Nameless One
Эксперт С++
 Аватар для Nameless One
5754 / 3403 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
21.10.2010, 05:28     Вопрос про конструктор и инициализвцию #21
Цитата Сообщение от Krist_ALL Посмотреть сообщение
быстая инициализация для char невозможна?
для char (одного символа) - возможна, для строки (массива символов) - нет, т.к. строка одновременно является указателем.

Цитата Сообщение от Krist_ALL Посмотреть сообщение
программа грохается
Замени строку 13 на
C++
1
name = new char[strlen(str) + 1];
Нужно дополнительно резервировать место для символа '\0' - нуль терминатора, которым кончаются строки Си, т.к. функция strlen его не считает. И да, если в конструкторе выделил память, то в деструкторе ее надо освобождать
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Yandex
Объявления
21.10.2010, 05:28     Вопрос про конструктор и инициализвцию
Ответ Создать тему
Опции темы

Текущее время: 18:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru