Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Копирование массива 
V
    Опции темы
elterrible
Дата 27.8.2008, 01:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 17.5.2008

Репутация: нет
Всего: нет



Добрый день,

есть простенький класс:

class TypeDescriptor {
public:
    CString* strings;
    TypeDescriptor(CString str[], int size) 
    {
        
    }
    ~TypeDescriptor()
    {
        
    }

};

Нужно чтобы strings был указателем на массив, переданный в качестве аргумента. 
Есть ли какой-то способ, более изящный чем strings = new CString[size]; и поэлементное копирование ?



PM MAIL   Вверх
mes
Дата 27.8.2008, 01:48 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(elterrible @  27.8.2008,  01:42 Найти цитируемый пост)
Нужно чтобы strings был указателем на массив, переданный в качестве аргумента. 
Есть ли какой-то способ, более изящный чем strings = new CString[size]; и поэлементное копирование ?

имелось ввиду что нужно чтоб strings был указателем на  копию массива?
изяшнее использовать вектор для динамическкого массива 

Это сообщение отредактировал(а) mes - 27.8.2008, 11:53


--------------------
PM MAIL WWW   Вверх
bsa
Дата 27.8.2008, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(elterrible @ 27.8.2008,  01:42)
ужно чтобы strings был указателем на массив, переданный в качестве аргумента. 
Есть ли какой-то способ, более изящный чем strings = new CString[size]; и поэлементное копирование ?

Код
#include <vector>

class TypeDescriptor {
public:
    TypeDescriptor(const std::vector<CString> &str) : strings(str)
    {
        
    }
    TypeDescriptor(const CString *str, size_t size) : strings(str, str + size)
    {
        
    }
    ~TypeDescriptor()
    {
        
    }
private:
    std::vector<CString> strings;
};
Подробнее про вектор можно почитать тут: 
http://www.cppreference.com/cppvector/index.html
http://www.sgi.com/tech/stl/Vector.html
http://www.cplusplus.com/reference/stl/vector/
PM   Вверх
elterrible
Дата 27.8.2008, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 17.5.2008

Репутация: нет
Всего: нет



mes, 
bsa, спасибо. Про вектор и лист из STL знаю и уже использую. Здесь просто хотелось убедиться что с обычными массивами по другому не получится ...
PM MAIL   Вверх
bsa
Дата 27.8.2008, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(elterrible @ 27.8.2008,  11:46)
mes, 
bsa, спасибо. Про вектор и лист из STL знаю и уже использую. Здесь просто хотелось убедиться что с обычными массивами по другому не получится ...

не получится
PM   Вверх
elterrible
Дата 27.8.2008, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 17.5.2008

Репутация: нет
Всего: нет



bsa, спасибо! Вопрос снят.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0506 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.