Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Test Ricası
#11
Enteresan, makinaya ya da Delphi versiyonuna göre bir fark var galiba ama henüz tespit edemedim ben de.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#12
(07-03-2019, Saat: 16:16)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı: İşletim sisteminde, componentlerde, IDE'de bug'lar genelde bana tesadüf eder. Hata mıknatısı gibiyim sanırım  Smile

Gözüme ilk carpanlar orjinal fonksiyon inline sizinki degil ama inline yapmak sonucu degistirmedi.

Orjinal fonksiyonun bulundugu math unitinin uzerinde bir sürü compiler direktifi var bu nedenle sizin yazdiginizdan bir miktar farkli derleniyor olabilir.

Uses icindeki unit isimlerinin sirasi bile derlemeyi farkettirebildiginden eminim ki iftenex foksiyonunu math unitin icine tasiyip öyle derlesek iki fonksiyon da ayni calisacak.

Benim dikkatimi ceken ise math unitin icinde ifthen fonksiyonunun icine breakpoint koyamadim. Bu fonksiyonun inline olmasi ile ilintili olabilir.

function test(a,b,c: double):double;
begin
//
end;

procedure TForm1.Button2Click(Sender: TObject);
var aBig Grinouble;
begin
 a:=0;
 Test(1, 2 , 3/a );
end;

hata verecek ve de vermesi cok normal Big Grin 

Soru "benim fonksiyonum neden hata veriyor" degil "adamin fonksiyonu neden hata vermiyor" olmali ki onun da cevabi math unitinin compiler direktiflerinde gizli olmali incelemek lazim.
Cevapla
#13
(07-03-2019, Saat: 17:44)cexx Adlı Kullanıcıdan Alıntı:
(07-03-2019, Saat: 16:16)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı: İşletim sisteminde, componentlerde, IDE'de bug'lar genelde bana tesadüf eder. Hata mıknatısı gibiyim sanırım  Smile

Gözüme ilk carpanlar orjinal fonksiyon inline sizinki degil ama inline yapmak sonucu degistirmedi.

Orjinal fonksiyonun bulundugu math unitinin uzerinde bir sürü compiler direktifi var bu nedenle sizin yazdiginizdan bir miktar farkli derleniyor olabilir.

Uses icindeki unit isimlerinin sirasi bile derlemeyi farkettirebildiginden eminim ki iftenex foksiyonunu math unitin icine tasiyip öyle derlesek iki fonksiyon da ayni calisacak.

Benim dikkatimi ceken ise math unitin icinde ifthen  fonksiyonunun icine breakpoint koyamadim. Bu fonksiyonun inline olmasi ile ilintili olabilir.

function test(a,b,c: double):double;
begin
//
end;

procedure TForm1.Button2Click(Sender: TObject);
var aBig Grinouble;
begin
 a:=0;
 Test(1, 2 , 3/a );
end;

hata verecek ve de vermesi cok normal Big Grin 

Soru "benim fonksiyonum neden hata veriyor" degil "adamin fonksiyonu neden hata vermiyor" olmali ki onun da cevabi math unitinin compiler direktiflerinde gizli olmali incelemek lazim.

Soru zaten Math.IfThen neden hata vermiyor üzerine kurulu üstad. Ayrıca benim fonksiyonum da inline Wink
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#14
(07-03-2019, Saat: 18:07)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı: Soru zaten Math.IfThen neden hata vermiyor üzerine kurulu üstad. Ayrıca benim fonksiyonum da inline Wink

Haklisin cok ozur, fonksiyon ayni unitin icinde olunca aliskanlikla tepede deklarasyonu varmi diye bakmadim Cool 

sonucta beklentimiz çagri satirinin "complete boolean evaluation = false" seklinde tepki vermesi.
Build-in fonksiyonlar icin adam ne cinlik yapmis bu gözle tekrar bakalim Big Grin
Cevapla
#15
İkiside her türlü hata veriyor ki zaten vermeside gerekli değilmi ?
WWW
Cevapla
#16
(07-03-2019, Saat: 18:46)esistem Adlı Kullanıcıdan Alıntı: İkiside her türlü hata veriyor ki zaten vermeside gerekli değilmi ?

Sizde her ikisi de mi hata veriyor ?
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#17
Win 8.1 pro

Delphi 10.2.3 Hata
Delphi 10.3.0 Hata

Floating point division by zero.
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#18
IfThenEx yordamını Click eventinin üzerine aldığımda hata vermiyor. Veya bir unit açıp sizin fonksiyonu aynen oraya ekleyip sonra o uniti implement edip kullandığımdada hata almamaktayım.
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#19
Win 7
Rio ve Tokyo Da hata vermedi. Değer: 25
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#20
(07-03-2019, Saat: 19:56)narkotik Adlı Kullanıcıdan Alıntı: IfThenEx yordamını Click eventinin üzerine aldığımda hata vermiyor. Veya bir unit açıp sizin fonksiyonu aynen oraya ekleyip sonra o uniti implement edip kullandığımdada hata almamaktayım.

Haklısınız ve durum benim açımdan daha da garipleşmiş oldu. Huh
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi