Фукции и Масивы

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем Make, 4 апр 2007.

Статус темы:
Закрыта.
  1. Make

    Make Гость

    Код (Text):
    AnsiString Razb[6] = {
    "Растворитель",
    "Бензин",
    "Разбовитель акриловый",
    "Разбовитель для металиков",
    "Разбавитель преходов",
    "Разбавитель для садолина"};

    AnsiString Otdelka[9] = {
    "Шпаклевка Софт" ,
    "Шпаклевка стекло" ,
    "Шпаклевка для пластика",
    "Шпаклевка легкая",
    "Шпаклевка металик",
    "Жидкая Шпаклевка" ,
    "Комбик" ,
    "Грунт акриловый" ,
    "Грунт по пластмассе" };

    void List(TListBox *ListBox);

    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
    {}
    //========================================

    void List (TListBox *ListBox)  //функция заполнения лист бокса
    {
    int Element = 6;
    for ( int i= 0; i<Element; i++)
    ListBox->Items->Add( Razb[i] );
    }
    //==========================================
    void __fastcall TForm1::BitBtn1Click(TObject *Sender)
    {
    ListBox1->Clear();
    List (ListBox1);
    }
    //=========
    на форме Listbox и кнопка

    так как масивов и листбоксов много (ок 10), пишу функцию list

    вопрос:
    хочу передавать масив в функцию List() по нажатию кнопки примерно так List (ListBox1, имя_масива);
    далее фукция должна брать колличество элементов масива и присваивать int Element, ну и соответственно заполнять лист бок ListBox->Items->Add( има_масива ), подскажите как реализовать с простыми переменными понятно а вот с маивами и чтот не догоню

    заранее благодарен
     
  2. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Код (Text):
    void List (TListBox *ListBox, AnsiString* pArray, int Count)
    Последний параметр - количество элементов в массиве.

    P.S. В соседней ветке я советовал тебе сделать эту функцию членом класса. Наверное, зря ты не послушал
     
  3. Make

    Make Гость

    я тока учусь и классы пока еще не совсем понял :(
    а сделал так
    Код (Text):
     void List (TListBox *ListBox, AnsiString *mater, int r)
    {

    int Element = r;
    for ( int i= 0; i<Element; i++)
    ListBox->Items->Add( mater[i]);
    }

    void __fastcall TForm1::BitBtn1Click(TObject *Sender)
    {
    ListBox1->Clear();
    List (ListBox1, Mater, 6);
    }[\code]
    вот тока пртходится передавать количество элементов масива, тк sizeof razb в строке List (ListBox1, Mater, sizeof razb); дает всегда значение 4 и ничего не могу с этим сделать
     
  4. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    <!--QuoteBegin-Make+5:04:2007, 04:44 -->
    <span class="vbquote">(Make @ 5:04:2007, 04:44 )</span><!--QuoteEBegin-->я тока учусь и классы пока еще не совсем понял
    [snapback]61341" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    В соседней ветке (http://codeby.net/forum/threads/13578.html) показали как сделать SetNum членом класса.<!--QuoteBegin-Make+5:04:2007, 04:44 -->
    <span class="vbquote">(Make @ 5:04:2007, 04:44 )</span><!--QuoteEBegin-->sizeof razb в строке List (ListBox1, Mater, sizeof razb); дает всегда значение 4 и ничего не могу с этим сделать
    [snapback]61341" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Это размер указателя, все правильно, так и должно быть

    <!--QuoteBegin-Make+5:04:2007, 04:44 -->
    <span class="vbquote">(Make @ 5:04:2007, 04:44 )</span><!--QuoteEBegin-->вот тока пртходится передавать количество элементов масива
    [snapback]61341" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Ну если ты так AnsiString Razb[6] определяешь массивы, то такое решение не самое страшное :)

    Объяви константу и используй ее, так как размерность массивов врядли будет у тебя часто изменяться
     
Загрузка...
Похожие Темы - Фукции Масивы
  1. dimon131
    Ответов:
    6
    Просмотров:
    2.518
  2. dimon131
    Ответов:
    3
    Просмотров:
    2.654
  3. morpheus
    Ответов:
    0
    Просмотров:
    1.560
Статус темы:
Закрыта.

Поделиться этой страницей