powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / как грамотно написать? (С++)
18 сообщений из 18, страница 1 из 1
как грамотно написать? (С++)
    #33709766
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
class Class1               
{
public:
    Class1();
    void fun1(void);
    void fun2(void);
    ...
    void Raschet(vector<vector<int> > *);  //из fun1,fun2 и т.д. я могу обращаться к этой ф-ии
protected:
    vector<vector<int> > v;
    ...
};
в каждой ф-ии - члене можно писать для обращения к Raschet напр. так:
Код: plaintext
1.
vector<vector<int> > *pV = &v;
Raschet(pV);
но как то это не грамотно. понимаю, что эту строку:
Код: plaintext
vector<vector<int> > *pV = &v;
нужно написать один раз в одном месте, только не знаю где??? подскажите, пож-та!!!!!
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33709807
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В конструкторе
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33709839
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, у меня тоже была такая мысль, только тогда на строках вызова Raschet выдается ошибка:
Код: plaintext
'pV': undeclared identifier
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33709846
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rkeg_да, у меня тоже была такая мысль, только тогда на строках вызова Raschet выдается ошибка:
Код: plaintext
'pV': undeclared identifier

Определи его как элемент класса и инициализируй в конструкторе.
Или просто в вызовах Raschet подставляй &v.
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33709867
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а как лучше:
Определить pV как элемент класса?
Или вообще забить на эту строку и в вызовах Raschet подставлять &v?
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33709917
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rkeg_Или вообще забить на эту строку и в вызовах Raschet подставлять &v?

А вообще - дело вкуса :)
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710040
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
определил pV как элемент класса, иниц. в конструкторе.
при вызове ф-ии ошибка выполнения:"нарушение доступа"
почему?
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710070
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код в студию
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710125
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
class Class1               
{
public:
    Class1();
    void fun1(void);
    void fun2(void);
    ...
    void Raschet(vector<vector<int> > *);
protected:
    vector<vector<int> > v;
    vector<vector<int> > *pV;
    ...
////////////////////
Class1::Class1()
{...
vector<vector<int> > *pV = &v;
}
///////////////////
Class1::Load()
{...
raschet(pV);  // на этой строке ошибка
}
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710174
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Найдите n отличий: :)
Код: plaintext
void Raschet(vector<vector<int> > *);
и
Код: plaintext
raschet(pV);
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710273
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не понял, в чем ошибка?
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710289
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С++ - case sensetive язык
Имена функций разные
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710325
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ааа, вон про что речь... :(
нет, это я описался когда вставлял код. у меня в тексте пр-мы верно написано. в обоих местах с большой буквы. (когда убирал излишки кода нечаянно стер и сам вызов, поэтому эту строку писал вручную).
так в чем может быть проблемма?
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33710410
Станислав C.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вставлю свои пять копеек:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
class Class1               
{
public:
    Class1();
    void fun1(void);
    void fun2(void);
    ...
    void Raschet(vector<vector<int> > *);
protected:
    vector<vector<int> > v;
    vector<vector<int> > *pV; // Объявляется член класса-указатель
    ...
////////////////////
Class1::Class1()
{...
vector<vector<int> > *pV = &v; //Объявляется локальная переменная-указатель и инициализируется некоторым адресом
}

///////////////////
Class1::Load()
{...
raschet(pV);  // на этой строке ошибка, так как попытка обратиться по "левому" адресу, сохраненному в pV (том, который член класса)...
//Здесь локальная переменная-указатель pV не видна!!!
}
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33711121
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь

rkeg_
Код: plaintext
1.
2.
3.
4.
Class1::Class1()
{...
vector<vector<int> > *pV = &v;
}



Эта переменная pV вместе со свим значением
умирает при выходе из конструктора.
Это сосвем не тот pV которй обьсявлен полем класса,
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33711330
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
подскажите, пож-та, как надо написать?
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33711378
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
Class1::Class1()
{...
pV = &v;
}
...
Рейтинг: 0 / 0
как грамотно написать? (С++)
    #33711497
rkeg_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо большое!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / как грамотно написать? (С++)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]