Hatalar, hatalar, sorular - sayfa 2325

 
Ilyas :
-> operatörünü terk etmek için ciddi nedenler var mıydı?
 
TheXpert :
-> operatörünü terk etmek için ciddi nedenler var mıydı?

Hayır, ciddi bir sebep yoktu.

Yokluğunun tek gerekçesi, C++'a aşina olmayan kullanıcıların kırılgan zihinlerine dikkat etmektir.

 
fxsaber :

Derleyici çift olumsuzlamayı optimize ediyor mu?

evet optimize ediyor

 
Ilyas :

Hayır, ciddi bir sebep yoktu.

Yokluğunun tek gerekçesi, C++'a aşina olmayan kullanıcıların kırılgan zihinlerine dikkat etmektir.

Eğer eklersen kötü bir şey olacağını sanmıyorum.

Bir süreliğine, belirsizliğin olmadığı yerlerde pointer ile point kullanımına izin vermek mümkün olacaktır.

Ve tabii ki bir uyarı verin.


 
Marketteki ürünlere nasıl buton eklenir: "Denemeyi İndir"?
 
Koldun Zloy :

Eğer eklersen kötü bir şey olacağını sanmıyorum.

Bir süreliğine, belirsizliğin olmadığı yerlerde pointer ile point kullanımına izin vermek mümkün olacaktır.

Ve tabii ki bir uyarı verin .

Neden bu kadar zorlaştırıyorsun? Yapmak için oldukça yeterli. ve -> eşdeğer, değiştirilebilir girişler

mecazi anlamda

 #define ->   .
 
fxsaber :

Evet, durumunuzda bir belirsizlik var. İyi bir şekilde, bunun için en azından bir derleyici uyarısı olmalıdır.

Benim çok daha basit durumumda, her şey açık. Bence C++ da buna katılıyor.

Yani benim durumumda MQL'nin (2) seçeneği, C++ ise (1) seçeneği anlamına geldiğini kastettim. Onlar. hayali netliğe sahipsiniz - küçük bir değişiklik (A sınıfı) ve anlam çarpıcı biçimde değişir
 
A100 :
hayali bir netliğe sahipsiniz - küçük bir değişiklik (A sınıfı) ve anlam çarpıcı biçimde değişir

Bunlar sınıf değişiklikleridir ve uygun derleyici mesajıyla sonuçlanmalıdır.

Orada değilse, tam bir belirsizlik anlamına gelir.

 
Ilyas :

Geçici bir çözüm olarak '!' operatörünü kullanın. (mantıksal değil)
Bir çözüm düşüneceğiz (bir sürü kod olduğu için artık davranışı değiştirmek mümkün mü?)
Bir işaretçi için, bool döküm işleminin işaret ettiği nesne üzerinde değil, işaretçi üzerinde bir işlem olması mümkündür.

Mevcut kodları değiştirmeden çalışmaz ... dinamik nesneler çökerken tüm işaretçi kavramı

Onlar. sadece yazmak yerine

 class A {
public :
         bool operator* ( A* a ) { return true ; }
};
void OnStart ()
{
        A *a, *b;
         if ( a * b );  //(1)
}

karışık yazmalısın

         if ( *a * *b );//(2)

Ve tüm bunlar ne için? NULL üzerindeki işaretçiyi kontrol etmek mümkün müydü? - Bunun için bir karşılaştırma operatörü var:

         if ( a != NULL ); //(3)

Neden çoğaltsın?

 
A100 :

dinamik nesneler olarak tüm işaretçi kavramını daraltır

şu anda bir kavram yok, nesne ve ona işaretçi bir yığın halinde karıştırılıyor