Uzun zamandır beni şaşırtan çok basit bir sorum var. Ağlar ve veritabanları ile uğraşıyorum, bu yüzden uğraştığım pek çok veri 32 bit ve 64 bit sayıcılar (işaretsiz), 32 bit ve 64 bit tanılama kimlikleridir (ayrıca işaret için anlamlı eşlemelere sahip değildir). Pratik olarak hiçbir zaman negatif sayı olarak ifade edilebilecek herhangi bir gerçek kelime sorunuyla ilgilenmiyorum.
Ben ve iş arkadaşlarım rutin olarak bu gibi uint32_t
ve gibi imzasız türleri kullanıyoruz ve uint64_t
bu sık sık gerçekleştiği için bunları da dizi indeksleri ve diğer ortak tamsayılar için kullanıyoruz.
Aynı zamanda, okuduğum (örneğin Google) çeşitli kodlama kılavuzları, imzasız tamsayı türlerinin kullanımını engelliyor ve Java ya da Scala'nın imzasız tamsayı türleri olmadığını bildiğim kadarıyla.
Bu yüzden, yapılacak doğru şeyin ne olduğunu bulamadım: çevremizdeki işaretli değerleri kullanmak çok sakıncalı olurdu, aynı zamanda kodlama rehberleri de tam olarak bunu yapmak için ısrar ediyorlardı.