Ev Kişisel Finans 8 C ++ Yeni Sunulan Olmayan Özellikler - AYDINLATMALAR

8 C ++ Yeni Sunulan Olmayan Özellikler - AYDINLATMALAR

İçindekiler:

Video: Üniversite Okumadan Sizi Zengin Yapacak 5 Programlama (Yazılım) Dili 2024

Video: Üniversite Okumadan Sizi Zengin Yapacak 5 Programlama (Yazılım) Dili 2024
Anonim

C ++ dili, programcıların her birinin başında anlaşılamayacak kadar çok özellik içeriyor: Başkalarının gözünde onlara bakmak için ileride bakmak isteyebileceğiniz on özellik aşağıda belirtilmiştir. Neyse ki, büyük, gerçek dünya programları yazmak için dilin tüm özelliklerine hakim olmanız gerekmez. Aşağıda, başkalarının programlarında görmeniz ihtimaline karşı, öne bakmak isteyebileceğiniz on özellik bulunmaktadır.

C ++ goto komutu

Bu komut, C ++'nın öncüsü olan C'ye geri gider. İlke olarak, bu komutu kullanmak kolaydır. Goto etiketi yerleştirebilirsiniz; istediğin herhangi bir yer. C ++ bu komutla karşılaştığında, denetim şu kod parçasında gösterildiği gibi etikete geçer:

Bununla birlikte, goto, berelenmenin birçok yolunu sunuyor. Her durumda, programcıların goto'nun en yaygın iki kullanımının döngülerden çıkıp bir döngü içindeki bir sonraki döneme gitmek olduğunu fark etmeleri çok uzun sürmedi. C Standards Committee, mola verdi ve devam etti ve goto komutunun neredeyse tamamen kaldırıldı.

C ++ üçlü operatör

üçlü operatör , C ve C ++ 'ye özgü bir operatöre aittir. Şöyle çalışır: int n = (koşullu)? expression1: ifade2;

? operatör ilk koşullu değerlendirir. Koşul doğruysa, ifadenin değeri ifade1'in değerine eşittir; Aksi takdirde, expression2 değerine eşittir.

Örneğin, maximum () işlevini aşağıdaki gibi uygulayabilirsiniz:

int max (int n1, int n2) {return (n1> n2)? n1: n2;}
Üçlü operatör, herhangi bir sayı türüne uygulanabilir, ancak aşırı yüklenemez. Üçlü operatör gerçekten bir ifade - bir if gibi bir kontrol ifadesi değil.

C ++ 'da numaralandırılmış türler Basit fikir, burada gösterildiği gibi sabitleri tanımlayabilir ve C ++ tarafından değer atamanıza izin verirsiniz:

enum Renkler {BLACK, BLUE, GREEN, SARI, RED}; Renkler myColor = SİYAH;

Numaralandırılmış türlerle ilgili sorun uygulanmasında yatar: Doğru bir tür oluşturmak yerine, C ++ tam sayıları kullanır. Bu durumda, SİYAH'a 0 değeri, BLUE'ya 1, YEŞİL2 ve benzeri atanır.


C ++ için 2011 Standart Kitaplığı, aşağıdaki pasajda gösterildiği gibi numaralandırılmış bir sınıf türü oluşturarak bu sorunu "sabitledi":

enum sınıfı Renkler {BLACK, BLUE, GREEN, SARI, RED}; Renkler myColor = Renkler:: BLACK;

Bu sürümde, Renkler yeni bir türe ait.KARIŞIMLARIN SİYAH, MAVİ ve benzeri sabitlerin her biri Renkli üyelerdir. Sınıf renklerinin bir nesnesini bir int içine atabilirsiniz, ancak örtülü bir yayın yapılamaz.

C ++ namespaces

Aynı adlı iki farklı kütüphanede farklı nesneler vermek mümkündür. Örneğin, Öğrenci kütüphanesi içerisindeki grade () işlevi büyük olasılıkla bir not atar; buna karşılık Civil Engineering üniversitelerindeki grade () işlevi, eğimi bir tepenin kenarında ayarlayabilir. Bu sorundan kaçınmak için C ++, programcının kodunu ayrı bir ad alanına yerleştirmesine izin verir. Dolayısıyla Öğrenci ad alanındaki not Civil Mühendisliğindeki nottan farklıdır.

Ad alanı sınıf adının üstünde ve altında. Civil Engineering alanındaki BullDozer sınıfının grade () üye işlevi genişletilmiş CivilEngineering:: BullDozer:: grade () adını taşır.

Tüm kitaplık nesneleri ve işlevleri std ad alanındadır. Program adının başındaki ifadede şablon ad alanı std; varsayılan ad alanında belirtilen nesneyi görmezseniz, o zaman std'ye bakmanız gerektiğini söylüyor.

C ++'da saf sanal işlevler

Sanal olarak bildirilen bir işlev tanımlamak zorunda değilsiniz. Böyle bir tanımlanmamış fonksiyon,

saf sanal üye fonksiyonu

olarak bilinir. Ancak bu noktada işler karmaşıklaşıyor. Örneğin, bir veya daha fazla saf sanal işlevleri olan bir sınıfın soyut olduğu söylenir ve bir nesne oluşturmak için kullanılamaz. Sanal işlevlerle ve geç bağlama konusunda rahat hissettikten sonra bu konuyla başa çıkın. C ++ dize sınıfı Çoğu dilde, karakter dizelerini kolayca işlemek için intrinsik bir tür olarak bir dize sınıfı bulunur. Teorik olarak, dize sınıfı C ++ için aynı şeyi yapmalıdır. Ancak uygulamada bu kadar basit değil. Dize intrinsik bir tür olmadığından, bir şey ters gittiğinde derleyicinin oluşturduğu hata iletileri, kullanıcı tanımlı sınıflarla ilişkili olanlara benzer. Yeni başlayanlar için bu mesajların yorumlanması çok zor olabilir.

dize bir sınıf bile değil. Bu bir şablon sınıfının bir örneğidir. Hata mesajları nefes kesici olabilir.

C ++'da birden çok devralma

Bir sınıf aslında birden fazla taban sınıfını genişletebilir. Bu basit gelebilir ancak iki taban sınıfı aynı ada sahip üyelik işlevleri içerdiğinde oldukça karmaşık hale gelebilir. Daha da kötüsü, her iki taban sınıfı da kendilerinin ortak sınıfın alt sınıfları olduğunda.

Aslında, C ++ 'ın çoklu kalıtım destekleyen tek C benzeri dil olması birçok sorunun ortaya çıkmasına neden olur. Java ve C #, her iki dil de C ++ 'dan türetilmiş, çok kalıtım desteğini bırakmaya karar verdiler.

C ++ şablonları ve Standart Şablon Kütüphanesi

C ++ üreticileri, aşağıdakine benzer benzer işlevlerin farkına vardı:

int max (int n1, int n2) {if (n1> n2) {return n1;} dönüş n2;} char max (char n1, char n2) {if (n1> n2) {döndür n1;} döndür n2;} çift maks (çift n1, çift n2) {if (n1> n2) Biri başkasına, "derleme zamanında tanımlayabildiğiniz sahte türde bir T ile türünü değiştirebilirseniz, serin olmaz mıydı" yazıyor: "n2; return n2;}

"Bunu bilmeden önce presto - şablonlar C ++ 'un bir parçası olur:

şablon T max (T 1> t 2) {if t1> t2;}

Şimdi programcı T'yi int ile değiştirip sonucu derleyerek bir max (int, int) oluşturun, T'yi double ile değiştirerek bir max (double, double) oluşturun vb. Standartlar Komitesi bile şablon sınıflarına dayanan Standart Şablon Kütüphanesi (kısaca STL) olarak bilinen bütün bir sınıf kütüphanesini yayımladı.

Bununla birlikte, yeni başlayanlar için, şablon sınıflarının konusu sözdizimsel olarak çok karmaşıklaşmaya başlar. Buna ek olarak, yanlış bir şablon örneği aldığınızda derleyicinin ürettiği hatalar, yeni başlayanlara aldırmayın, bir uzmana şaşırtıcı gelir. Bu kesinlikle, temel dilde rahat hissetene kadar beklemesi gereken bir konudur.
8 C ++ Yeni Sunulan Olmayan Özellikler - AYDINLATMALAR

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 ...