Perguntas de um "boneco" - página 275

 

Olá! como encontro um valor numa matriz bidimensional? É necessário pesquisar na primeira dimensão. Parece não haver nenhum meio padrão. Obrigado!

 
zhurkin:

Olá! como encontro um valor numa matriz bidimensional? É necessário pesquisar na primeira dimensão. Parece não haver nenhum meio padrão. Obrigado!

À maneira antiga. Ciclo. Se for igual, é tudo.
 
ALXIMIKS:

Comecei a estudar o OOP.

Tive um problema ao escrever um descendente de uma classe base, o compilador escreve - "'ХХХХХХ' - parâmetros errados contam".

Há muito tempo que ando à procura da razão, relendo artigos e livros de referência,

mas encontrei-o - a classe base tem um construtor, é um e paramétrico.

Também encontrei uma solução - sobrecarga da função de construtor com o construtor por defeito,

mas depois tenho de arrastar todos os parâmetros do construtor paramétrico da classe base para o construtor descendente para uma lógica correcta.

Existem outras formas?

Existe alguma forma, ao declarar uma classe descendente, de distribuir a quem o quê? Por exemplo: estes parâmetros para o construtor da classe base e estes parâmetros para que o descendente não se aborreça...

Se uma classe base tem um único construtor paramétrico, a classe descendente não pode evitar chamá-la. No entanto, a classe criança pode ter qualquer número de parâmetros, incluindo não ter qualquer parâmetro. O principal é que o construtor da classe base é chamado com todos os parâmetros a ela atribuídos. Exemplo:

class CParent
{
   public:
      CParent(int myID, string myName, double myValue)
      {
         id = myID;
         name = myName;
         value = myValue;
      }
   private:
      int id;
      string name;
      double value;
};

class CChildOne : CParent
{
    public:
       CChildOne() : CParent(2, "CChildOne", 2.34){;}
};

class CChildTwo : CParent
{
    public:
       CChildOne(int myID, int param) : CParent(myID, "CHildTwo", 2.56)
       {
          xParam = param;
       }
    private:
       double xParam;
};

 

Houve uma discussão no tópico sobre


ENUM_POSITION_TYPE

dois valores. e o que é devolvido se não houver posições em aberto?

Utilizo o método PositionType() da biblioteca padrão.

Ok, já sei, PositionSelect() retorna falso, e PositionType() retorna o tipo da última posição seleccionada.



acontece que se não houver uma posição aberta, devolve sempre 0, ou seja, como se uma posição de compra fosse aberta?

como contornar isto?


 
openlive:

Houve uma discussão no tópico sobre


ENUM_POSITION_TYPE

dois valores. e o que é devolvido se não houver posições em aberto?

Utilizo o método PositionType() da biblioteca padrão.

Ok, já sei, PositionSelect() retorna falso, e PositionType() retorna o tipo da última posição seleccionada.



acontece que se não houver uma posição aberta, devolve sempre 0, ou seja, como se uma posição de compra fosse aberta?

como contornar isto?


PositionSelect() é seleccionada se houver uma posição independentemente do seu tipo, 0 - sem posição, 1 - sim, e o tipo é definido como conveniente.
 

Existem duas variantes de definição de funçõesOnCalculate :

1)int OnCalculate (const int rates_total, // tamanho do preço da matriz[]

const int prev_calculated, // barras processadas na chamada anterior
const int begin, // onde os dados significativos começam a partir
const double& price[] // matriz para cálculo
);

2)int OnCalculate (const int rates_total, // tamanho das séries de tempos de entrada

const int prev_calculated, // barras processadas na chamada anterior
const datetime& time[], // Hora
const double& open[], // Aberto
const double& high[], // Alto
const double& low[], // baixo
const double& close[], // Fechar
const long& tick_volume[], // Tick Volume
const long& volume[], // Volume real
const int& spread[] // Spread
);

chamar a função 1)OnCalculate(), preenche todos os seus parâmetros - OnCalculate(rates_total,0,0,_price);

PERGUNTA: poderia por favor preencher os parâmetros para a segunda chamada àOnCalculate() neste caso?

 
Piterrr:

Existem duas variantes de definição de funçõesOnCalculate :

1)int OnCalculate (const int rates_total, // tamanho do preço da matriz[]

const int prev_calculated, // barras processadas na chamada anterior
const int begin, // onde os dados significativos começam a partir
const double& price[] // matriz para cálculo
);

2)int OnCalculate (const int rates_total, // tamanho das séries de tempos de entrada

const int prev_calculated, // barras processadas na chamada anterior
const datetime& time[], // Hora
const double& open[], // Aberto
const double& high[], // Alto
const double& low[], // baixo
const double& close[], // Fechar
const long& tick_volume[], // Tick Volume
const long& volume[], // Volume real
const int& spread[] // Spread
);

chamar a função 1)OnCalculate(), preenche todos os seus parâmetros - OnCalculate(rates_total,0,0,_price);

PERGUNTA: poderia por favor preencher os parâmetros para a segunda chamada àOnCalculate() neste caso?

e nada precisa de ser preenchido nem no primeiro nem no segundo caso.
 
zfs:
e nada precisa de ser preenchido no primeiro ou segundo caso.
Preciso de chamar esta função à força - como preencher os parâmetros neste caso ?
 
Piterrr:
Preciso de chamar esta função à força - como preencher os parâmetros neste caso ?
Crie o seu próprio, este não pode.
 
zfs:
Não se pode criar um dos seus.
Crio a minha própria, dentro da qual escrevo a funçãoOnCalculate(), mas ao preenchê-la com parâmetros gera erros - por favor enviem-me um exemplo.