Çaydanlıktan gelen sorular - sayfa 275

 

Merhaba! 2B dizide değer nasıl bulunur? İlk boyutta arama yapmanız gerekiyor. Görünüşe göre standart araçlar yok. Teşekkür ederim!

 
zhurkin :

Merhaba! 2B dizide değer nasıl bulunur? İlk boyutta arama yapmanız gerekiyor. Görünüşe göre standart araçlar yok. Teşekkür ederim!

Eski usul. Döngü. Eğer öyleyse, öyledir.
 
ALXIMIKS :

OOP öğrenmeye başladı.

Temel sınıfın torununu yazarken bir sorun oluştu, derleyici şunu yazıyor - "'ХХХХХ' - yanlış parametre sayısı"

Uzun süre sebep aradım, makaleleri ve rehberi tekrar okudum,

bulundu - temel sınıf yapıcısında tek ve parametriktir.

Ayrıca, varsayılan kurucu ile kurucu işlevini aşırı yükleyerek bir çıkış yolu buldum,

ama sonra mantığın doğru olması için temel sınıfın parametrik kurucusunun tüm parametrelerini çocuğun kurucusuna sürüklemeniz gerekir.

Başka yollar var mı?

Bir şekilde soyundan sınıf ilan ederken hemen, kime ne dağıtabilirsiniz? Örneğin: bu parametreler temel sınıf yapıcısı içindir ve bunlar çocuğun sıkılmaması içindir...

Temel sınıfın tek bir parametrik kurucusu varsa, soyundan gelende bundan kaçınılamaz. Bununla birlikte, bir alt sınıf, hiç parametre dahil olmak üzere herhangi bir sayıda parametreye sahip olabilir. Ana şey, temel sınıf yapıcısının kendisine atanan tüm parametrelerle çağrılması gerektiğidir. Misal:

 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;
};

 

burada konu başlığında tartışıldı


ENUM_POSITION_TYPE

iki değer. açık pozisyon yoksa ne iade edilir?

Standart kitaplıktan PositionType() yöntemini kullanıyorum.

İşte bu, PositionSelect() öğesinin false döndürdüğünü ve PositionType() öğesinin son seçilen konumun türünü döndürdüğünü anlıyorum.



Açık pozisyon yoksa, o zaman her zaman 0 döndürülür, yani bir alış pozisyonu açık gibi mi?

nasıl doğru bir şekilde atlanır?


 
openlive :

burada konu başlığında tartışıldı


ENUM_POSITION_TYPE

iki değer. açık pozisyon yoksa ne iade edilir?

Standart kitaplıktan PositionType() yöntemini kullanıyorum.

İşte bu, PositionSelect() öğesinin false döndürdüğünü ve PositionType() öğesinin son seçilen konumun türünü döndürdüğünü anlıyorum.



Açık pozisyon yoksa, o zaman her zaman 0 döndürülür, yani bir alış pozisyonu açık gibi mi?

nasıl doğru bir şekilde atlanır?


PositionSelect(), türünden bağımsız olarak mevcutsa bir konum seçer, 0 - konum yok, 1 var ve tür zaten daha uygun olarak tanımlanmış
 

OnCalculate işlevini tanımlamak için iki seçenek vardır:

1) int OnCalculate ( const int oranları_toplam, // fiyat[] dizi boyutu

const int prev_calculated, // önceki çağrıda işlenen çubuklar
const int start , // anlamlı verilerin başladığı yer
const double & fiyat[] // hesaplama için dizi
);

2) int OnCalculate ( const int Rates_total, // giriş zaman serisinin boyutu

const int prev_calculated, // önceki çağrıda işlenen çubuklar
const tarihsaat ve saat[], // Saat
const çift ve aç[], // Aç
const çift ve yüksek[], // Yüksek
const çift ve düşük[], // Düşük
const çift ve kapat[], // Kapat
const long & tick_volume[], // Tick Volume
const uzun ve hacim[], // Gerçek Hacim
const int & yayılma[] // Yayılma
);

işlev çağrısı 1)   Hesapla() , tüm parametrelerini doldurduktan sonra - OnCalculate(rates_total,0,0,_price);

SORU: söyle bana, lütfen, bu durumda, OnCalculate() işlevini çağırmanın ikinci seçeneği için parametreleri nasıl dolduracağım?

 
Piterrr :

OnCalculate işlevini tanımlamak için iki seçenek vardır:

1) int OnCalculate ( const int oranları_toplam, // fiyat[] dizi boyutu

const int prev_calculated, // önceki çağrıda işlenen çubuklar
const int start , // anlamlı verilerin başladığı yer
const double & fiyat[] // hesaplama için dizi
);

2) int OnCalculate ( const int Rates_total, // giriş zaman serisinin boyutu

const int prev_calculated, // önceki çağrıda işlenen çubuklar
const tarihsaat ve saat[], // Saat
const çift ve aç[], // Aç
const çift ve yüksek[], // Yüksek
const çift ve düşük[], // Düşük
const çift ve kapat[], // Kapat
const long & tick_volume[], // Tick Volume
const uzun ve hacim[], // Gerçek Hacim
const int & yayılma[] // Yayılma
);

işlev çağrısı 1)   Hesapla() , tüm parametrelerini doldurduktan sonra - OnCalculate(rates_total,0,0,_price);

SORU: söyle bana, lütfen, bu durumda, OnCalculate() işlevini çağırmanın ikinci seçeneği için parametreleri nasıl dolduracağım?

ve birinci veya ikinci durumda hiçbir şeyin doldurulmasına gerek yoktur.
 
zfs :
ve birinci veya ikinci durumda hiçbir şeyin doldurulmasına gerek yoktur.
Bu işlevi zorla çağırmam gerekiyor - bu durumda parametreler nasıl doldurulur?
 
Piterrr :
Bu işlevi zorla çağırmam gerekiyor - bu durumda parametreler nasıl doldurulur?
Kendinizinkini oluşturamazsınız.
 
zfs :
Kendinizinkini oluşturamazsınız.
İçinde bir fonksiyon yazdığım kendiminkini yaratırım   Hesapla() , ancak parametrelerle doldururken hatalara neden oluyor - skinte pliz bir doldurma örneği.
Neden: