Sabit ve sabit olmayan anahtarı arasındaki fark nedir?
Aşağıdaki iki satır arasındaki fark nedir?
map<int, float> map_data;
map<const int, float> map_data;
CEVAP
int
const int
iki farklı türleri vardır.std::map<int, float>
std::map<const int, float>
, benzer şekilde, farklı türleri vardır.
std::map<const int, float>
std::map<int, float>
arasındaki fark,,, std::map<int, float>
say ve 11*;* arasındaki fark benzer bir dereceye kadarher biri için taze bir harita türü.
Olmayanconst
Bu durumda, iç anahtar türühala sigara-* int
*13:
std::map<const int, float>::key_type => const int
std::map<int, float>::key_type => int
Ancak, göster anahtarlarıanlamsaldeğişmez ve anahtarları doğrudan erişim (örneğin, value_type
verimleri kaldırma kullanımına,) izin tüm işlemleri göster const
mu key_type
bir:
std::map<const int, float>::value_type => std::pair<const int, float>
std::map<int, float>::value_type => std::pair<const int, float>
O kadar farkolabilirEğer uygulama izin veriyorsa önemli olan her şekilde size büyük ölçüde görünmez.
Bu her zaman böyle değil ama: standart resmengerektirircopyable ve hareketli olmak anahtar türü, ve some implementations re-use map nodes; Bu uygulamaları altında const
bir anahtar kullanmaya çalışırken sadece işe yaramaz.
Sabit ve salt okunur arasındaki fark n...
Sabit*, int * sabit ve sabit int *int ...
Sembolik bağlantı ve sabit bir bağlant...
* Sabit ve sabit char *char arasındaki...
NP, NP-Tam arasındaki farkları ve Sabi...