Ev Kişisel Finans C ++'da bir Yapı Şablonu Oluşturma C ++'da

C ++'da bir Yapı Şablonu Oluşturma C ++'da

Video: Coding Minecraft in One Week - C++/OpenGL Programming Challenge 2024

Video: Coding Minecraft in One Week - C++/OpenGL Programming Challenge 2024
Anonim

Yapı şablonlarının, belirli bir türe bağımlı olmayan bir veri havuzunun oluşturulması gibi ilginç kullanımları vardır. Burada StructureTemplate örneği böyle bir kullanımı gösterir.

#include ad alanı std kullanarak; şablon struct Cilt {T yükseklik; T genişliği; T uzunluğu; Ses () {height = 0; genişlik = 0; uzunluk = 0;} T getvolume () {dönüş yüksekliği * genişlik * uzunluğu;} T getvolume (T H, T W, T L) {yükseklik = H; genişlik = W; uzunluk = L; dönüş yüksekliği * genişlik * uzunluk;}}; int main () {Birincisi; cout << "ilk cilt:" << ilk önce. getvolume () << endl; ilk. yükseklik = 2; ilk. genişlik = 3; ilk. uzunluk = 4; cout << "ilk cilt:" << ilk önce. getvolume () << endl; Hacim ikinci; cout << "ikinci cilt:" << ikinci. getvolume (2. 1, 3. 2, 4. 3) << endl; cout << "yükseklik:" << ikinci. yükseklik << endl; cout << "genişlik:" << ikinci. genişlik << endl; cout << "uzunluk:" << ikinci saniye. uzunluk << endl; return 0;}

Bu durumda, yapı hacim belirlemek için kodun kullanabileceği yükseklik, genişlik ve uzunluk verileri değerlerini içerir. Yapı, değerleri başlatmak için bir yapıcı içerir; bu nedenle, birisi yapıyı başlatmadan getvolume () çağırsa da, hiçbir şey olmaz.

Yapı, her bir veri değerinden bağımsız olarak erişime izin verir. Onları istediğiniz gibi ayarlayabilir veya alabilirsiniz.

getvolume () işlevi aşırı yüklenmiştir. Giriş değerleri ile veya girdi değerleri olmadan arayabilirsiniz. Main () içindeki kod yapısı iyice sınar. İşte bu örnekten çıktı olarak gördüğünüz:

Birinci hacim: 0 Birinci hacim: 24 İkinci hacim: 28. 896 Yükseklik: 2. 1 Genişlik: 3. 2 Uzunluk: 4. 3

Bir başka ilginç amaç. C ++ standardı typedef bir şablon oluşturamayacağınızı söylüyor. Örneğin, aşağıdaki kodu derlemeye çalıştığınızda bir hata üretir:

şablon typedef map MyDef;

Kod:: Bloklar'da bu kodu derlemeye çalıştığınızda aşağıdaki hata görürsünüz:

hata: 'typedef'

şablon bildirimi Ancak, bir yapı şablonu içinde bir typedef tanımlayabilirsiniz. Burada StructureTemplate2 örnek kodu nasıl yapılacağını gösterir.

#include #include using namespace std; şablon struct MyDef {typedef map Type;}; int main () {MyDef:: Giriş evlilikleri; evlilikler ["Tom"] = "Suzy"; evlilikler ["Harry"] = "Harriet"; cout << evlilikler ["Tom"] << endl; cout << evlilikler ["Harry"] << endl; return 0;}

Bu örnek, typedef'i MyDef yapısında yerleştirerek C ++ sınırlamalarını yener. Aynı yapı, herhangi bir sayıdaki typedef girdisini tutabilir.

Bu şekilde bir typedef kullanmak harita ile çalışmayı kolaylaştırır.Endişelenmeniz gereken şey değer türüdür - anahtar türü zaten dize olarak tanımlanmıştır.

C ++'da bir Yapı Şablonu Oluşturma C ++'da

Editörün Seçimi

Kendi Excel 2007 Şablonlarınızı Oluşturun - mankenler

Kendi Excel 2007 Şablonlarınızı Oluşturun - mankenler

Hazır bir Excel 2007 şablonunu bulamazsanız faturaya uyuyor, oluşturduğunuz veya şirketinizin elinde bulunan örnek çalışma kitaplarından kendi şablonlarınızı oluşturuyor. Kendi şablonunuzu oluşturmanın en kolay yolu, gerçek bir çalışma kitabı prototipi oluşturmak ve dosyayı şablon dosyası biçimini kullanarak kaydedin ...

Kendi Excel 2010 Şablonlarınızı Oluşturma - mankenler

Kendi Excel 2010 Şablonlarınızı Oluşturma - mankenler

Hazır Excel 2010 şablonunu bulamazsanız faturaya uyuyor, oluşturduğunuz veya şirketinizin elinde bulunan örnek çalışma kitaplarından kendi şablonlarınızı oluşturuyor. Kendi şablonunuzu oluşturmanın en kolay yolu, gerçek bir çalışma kitabı prototipi oluşturmak ve dosyayı şablon dosyası biçimini kullanarak kaydedin ...

Excel 2007 Grafiğinin Tipini ve Stilini özelleştiren - aumluları

Excel 2007 Grafiğinin Tipini ve Stilini özelleştiren - aumluları

Bir grafik eklediğinizde bir Excel 2007 çalışma kitabı, Şeritte yeni bir Grafik Araçları Tasarım sekmesi görüntülenir. Grafik türünü ve stilini özelleştirmek için Grafik Araçları Tasarım sekmesindeki komut düğmelerini kullanabilirsiniz. Tasarım sekmesi aşağıdaki düğme gruplarını içerir: Tür grubu Değiştir Grafik Türü ...

Editörün Seçimi

ÜÇüncü Temel, Çalınma Evini ve Diğer Beyzbol Beyitlerini Çalın

ÜÇüncü Temel, Çalınma Evini ve Diğer Beyzbol Beyitlerini Çalın

ÜÇüncü temel çalmak genellikle ikinci çalmaktan daha kolaydır. Birçok atış çizmeden ilk önce olduğundan daha büyük bir yol alabilirsin. Zamanlamanız iyi ise, atıcı topu bırakmadan önce saniyelerden de çıkabilirsiniz. Sürahi genellikle koşucuları ikinci sıradan seçmek daha zor olur ...

Basketbol Takımınızda Bir Balo Domuzuyla

Basketbol Takımınızda Bir Balo Domuzuyla

Balo domuzu - asılı bir oyuncu uzun süreler boyunca topa vurur ve geçmek yerine her yere ateş etmeyi amaçlar - tüm takım için gerçek sorunlar yaratır. Örneğin, topu domuzu, takımın moralini zayıflatan ve öldüren puan almaya çalışan açık takım arkadaşlarını görmezden gelir ...

Editörün Seçimi

Canon EOS 6D'ye Yazar Adı Nasıl Eklenir Canon EOS 6D'ye Yazar Adı Nasıl Eklenir

Canon EOS 6D'ye Yazar Adı Nasıl Eklenir Canon EOS 6D'ye Yazar Adı Nasıl Eklenir

Adınızı aşağıdaki gibi ekleyebilirsiniz: Canon'la çektiğiniz her görüntünün yazarı. Bilgiler, çektiğiniz her resme EXIF ​​verisi olarak eklenir. Yazar bilgilerinizi kameraya kaydetmek için: Menü düğmesine basın. Daha önce kullanılan menü görüntülenir. Kamera Ayarları ... 4 ...

Rebel T6i / 750D'den Görüntülere Nasıl Temizleme Talimatları Ekleyeceksiniz - mankenler

Rebel T6i / 750D'den Görüntülere Nasıl Temizleme Talimatları Ekleyeceksiniz - mankenler

Küçük noktalar görüntülerinizde tutarlı bir şekilde görünüyorsa ve Rebel T6i / 750D'nin lensindeki kirin nedeni değilse - sensörünüzün temizlemeye ihtiyacı olabilir. Sensörü kendiniz temizlemeyin, çünkü ne yaptığınızı bilmiyorsanız makinenizi kolayca mahvedebilirsiniz. Bunun yerine, fotoğraf makinesini çekin ...