ссылка на класс в классе :)

  • Автор темы CyberM
  • Дата начала
Статус
Закрыто для дальнейших ответов.
C

CyberM

#1
вобщем есть типа такого:

Код:
class Bla{
public:
int pole1;
double pole2;
public: 
Bla(int a){
pole1=a;
pole2=0;
}
int func1(){
return pole1;
}
};
class BlaBla{
public:
int pole3;
int pole3333;
Bla *bla[10];
public:

BlaBla(int n)
{
pole3=n;
pole3333=0;
for(int i<0; i++; i<n)
{
if(!bla[i])
{
bla[i]=new Bla(a);
}
}

}
int func2(){
for(int i<0; i++; i<n)
{
if(bla[i]->pole1==1)
{
bla[i]->pole2=10;
}
}  


}
и при обращении к полю
например тут:
Код:
if(bla[i]->pole1==1)
праграма виснет намертво :)
как сделать правильно? )
 
M
#2
Ну начнем по порядку :)

1. В конце класса BlaBla нехватает };
2. Все форы написаны не верно, верно for ( init-expression ; cond-expression ; loop-expression ), у вас второе и третье поменяны местами (видимо из-за этого и виснет, цикл не завершается).
3. if(!bla) - не будет работать, если до этого не обнулить память.
4. Что такое n в func2?
5. Что такое a в конструкторе BlaBla?

Ну вроде всё ;)
 
04.09.2006
2 566
3
#3
Может прежде чем писать классы разобраться с циклами?
Ошибки в коде:
1. Неправильное условие в циклах.
2. В конструкторе класса BlaBla переменная a не определена.
3. В методе func2 класса BlaBla переменная n не определена.
И как только компилятор такой код пропустил? :)

<!--QuoteBegin-mms+5:07:2007, 10:15 -->
<span class="vbquote">(mms @ 5:07:2007, 10:15 )</span><!--QuoteEBegin-->Ну вроде всё
[snapback]71424" rel="nofollow" target="_blank[/snapback]​
[/quote]
Опередил ;)

Еще func2 должен возвращать значение

<!--QuoteBegin-mms+5:07:2007, 10:15 -->
<span class="vbquote">(mms @ 5:07:2007, 10:15 )</span><!--QuoteEBegin-->у вас второе и третье поменяны местами (видимо из-за этого и виснет, цикл не завершается).
[snapback]71424" rel="nofollow" target="_blank[/snapback]​
[/quote]
Да и начальной инициализации нет
 
Статус
Закрыто для дальнейших ответов.