Atama ilk durumda çalışıyorsa, ikinci durumda mantıksal olarak çalışması gerekir. Çünkü ilk durumda, işaretçiye aynı değer atanır, ancak operatör daha sonra çalışır!
Bu tabi ki sadece benim görüşüm. Ama avı anlamak için.
Atama ilk durumda çalışıyorsa, ikinci durumda mantıksal olarak çalışması gerekir. Çünkü ilk durumda, işaretçiye aynı değer atanır, ancak operatör daha sonra çalışır!
Bu tabi ki sadece benim görüşüm. Ama avı anlamak için.
Bir değer yalnızca soldaki bir değere atanabilir veya geçici bir sabit olabilir.
Artı tarafta ne işe yarar:
class A
{
public :
int m[ 10 ];
int & operator [] ( constint i)
{
return ((m[i]));
}
};
int main()
{
A oA;
oA[ 2 ] = 5 ;
}
Ama bu değil.
class A
{
public :
int* m[ 10 ];
int * operator [] ( constint i)
{
return ((m[i]));
}
};
int main()
{
A oA;
oA[ 2 ] = newint ; // error C2106: =: левый операнд должен быть левосторонним значением
}
Ben aptalım. Söyle bana neden mümkün değil?
Anladım.
Açıklamak
Açıklamak
this[0] burada bir değerdir.
Net olmayan şey bu.
Atama ilk durumda çalışıyorsa, ikinci durumda mantıksal olarak çalışması gerekir. Çünkü ilk durumda, işaretçiye aynı değer atanır, ancak operatör daha sonra çalışır!
Bu tabi ki sadece benim görüşüm. Ama avı anlamak için.
Net olmayan şey bu.
Benim için de net değil. ))Güncel. Zaten açık.
Atama ilk durumda çalışıyorsa, ikinci durumda mantıksal olarak çalışması gerekir. Çünkü ilk durumda, işaretçiye aynı değer atanır, ancak operatör daha sonra çalışır!
Bu tabi ki sadece benim görüşüm. Ama avı anlamak için.
Bir değer yalnızca soldaki bir değere atanabilir veya geçici bir sabit olabilir.
Artı tarafta ne işe yarar:
Ama bu değil.
Ama bu değil ve ben bir şeye yetişemiyorum, ne fark eder:
Dizine bir bağlantı eklerseniz çalışacaktır. Veya bir çift işaretçi.
Oh, yavaşlıyorum, ikinci örnek genellikle yanlış
Bu nedenle şu mantıklıdır:
hata: 'int*&' türündeki const olmayan başvurunun 'int*' türündeki bir değerden geçersiz başlatılması