• API motor yağı spesifikasyonu. Dizel motorlar için yağların özellikleri

    Tanımlayıcıların her birini yorumlamak için açıklamalar kullanılır; tanımlayıcıyla ilişkili bir bellek tahsisinin eşlik etmesine gerek yoktur. Açıklamalar şuna benziyor

    spesifikasyon-özellikler opt spesifikasyon listesi opt;
    fonksiyon tanımı
    bağlantı spesifikasyonu

    Bildirimci listesindeki bildirimciler (§R.8) tanımlayıcı tanımlayıcıları içerir. Bir belirtim-beyan yapısı yalnızca bir işlev tanımından (§R.8.3) veya bir işlev bildiriminden çıkarılabilir. Bildirimci listesi yalnızca bir sınıf (§R.9) veya bir numaralandırma (§R.7.2) bildirilirken boş olabilir, ör. dec-spec bir sınıf-spec veya bir enum-spec olduğunda. asm-açıklama yapısı §R.7.3'te ve bağlantı spesifikasyonu §R.7.4'te açıklanmıştır. Bildirim tanımlanmış bir kapsamda gerçekleşir (§R.3.2), kapsam kuralları §R.10.4'te verilmiştir.

    R.7.1 Özellikler

    Açıklamada aşağıdaki özellikler kullanılabilir:

    özellikler-açıklamalar:
    bellek sınıfı spesifikasyonu
    tip spesifikasyonu
    tür-şablon-belirtimi
    özellikler-açıklamalar:
    teknik özellikler opt teknik özellikler

    Muhtemelen bir tür adı olan spesifikasyon bildirimi yapılarının en uzun dizisi, bildirimde bir spesifikasyon bildirimi yapısı oluşturur. Sıra aşağıda açıklandığı gibi tutarlı olmalıdır. Örneğin,

    statik bilgisayar; // hata: isim yok

    Burada, Pc türünde statik değişken adı belirtilmediğinden statik Pc bildirimi geçersizdir. Pc adında bir int değişkenine sahip olmak için, Pc adının yalnızca Pc değil, typedef'ten (yeniden) tanımının bir dec-dec dizisinin öğelerinden biri olduğunu belirtmek için bir int type-spec belirtilmelidir. spec yapıları, örneğin,

    void f(const Pc); // void f(char* const)
    void g(const int Pc); // void g(const int)

    İmzalı, imzasız, uzun ve kısa varsayılan olarak int olarak ele alındığından, listelenen tür belirtimlerinden birinden sonra görünen typedef adının (yeniden) tanımlanabilir bir ad belirtmesi gerektiğini unutmayın; örneğin,

    void h(imzasız Pc); // void h(imzasız int)
    void k(imzasız int Pc); // void k(imzasız int)

    R.7.1.1 Depolama sınıfı spesifikasyonları

    Depolama sınıfı özellikleri şunlar olabilir:

    bellek sınıfı spesifikasyonu:

    Otomatik ve kayıt özellikleri yalnızca bir blokta (§R.6.3) veya resmi parametrelerde (§R.8.3) bildirilen nesne adlarına uygulanabilir. Neredeyse her zaman, auto belirtimi gereksizdir ve sıklıkla kullanılmaz; dolayısıyla auto, bir bildirim ifadesini bir ifade ifadesinden açıkça ayırmak için kullanılır (§R.6.2).

    Kayıt bildirimi, derleyiciye bildirilen değişkenlerin yaygın olarak kullanılacağını bildiren bir otomatik bildirimdir. İpucu göz ardı edilebilir ve birçok uygulamada bir değişkenin adresi alındığında göz ardı edilir.

    Bir nesne bildirimi, harici bir belirtim ve bir başlatma içermediği sürece bir tanım olarak kabul edilir (§R.3.1).

    Tanım, uygun boyutta belleğin tahsis edilmesi ve uygun başlatma işleminin yürütülmesiyle sonuçlanır (§R.8.4).

    Statik ve harici belirtimler yalnızca nesne veya işlev adlarına veya anonim birleşimlere uygulanabilir. Statik spesifikasyona sahip fonksiyon bildirimlerine veya statik veya harici spesifikasyona sahip resmi parametrelere blok içinde izin verilmez. Statik sınıf üyeleri §R.9.4'te açıklanmıştır. Extern belirtimi sınıf üyeleri için geçerli değildir.

    Statik belirtimi olan bir ad, dahili bağlantıya tabidir. Const olarak bildirilen nesneler, harici bağlamayla bildirilmedikleri sürece dahili bağlamaya tabidir. Harici belirtime sahip bir ad, daha önce dahili bir bağlantıyla bildirilmediği sürece, harici bağlantıya tabidir. Depolama sınıfı spesifikasyonu olmayan dosya kapsamlı bir ad, daha önce bir iç bağlantı veya const-spec ile bildirilmemişse, dış bağlamaya tabidir. Üye olmayan işlevler için bağlama anlamında, satır içi belirtim statik ile eşdeğerdir (§R.3.3). Tek bir adın tüm bağlayıcı özelliklerinin aynı olması gerekir. Örneğin,

    statik karakter*f(); // f() dahili olarak bağlıdır
    char* f() // f() hala dahilidir
    char*g(); // g()'ın dış bağlaması var
    statik karakter* g() // hata: bağlama tutarsızlığı
    statik int a; // `a" dahili olarak bağlıdır
    int a; // hata: ikinci tanım
    statik int b; // `b" dahili olarak bağlıdır
    harici int b; // `b" hala dahili
    int c; // `c" dış bağlamaya sahip
    statik int c; // hata: bağlamada tutarsızlık
    harici int d; // `d" dış bağlamaya sahip
    statik int d; // hata: bağlamada tutarsızlık

    Tanımsız bir sınıfın adı harici bir bildirimde kullanılabilir. Ancak böyle bir bildirim, sınıf tanımlanmadan önce kullanılamaz; örneğin,

    g(a); // hata: S tanımsız
    F(); // hata: S tanımsız

    R.7.1.2 Fonksiyon spesifikasyonları

    Bazı spesifikasyonlar yalnızca fonksiyon açıklamalarında kullanılabilir.

    Satır içi belirtim, derleyiciye, işlev çağrısının olağan uygulaması yerine işlevin gövdesini satır içi yazmanın gerekli olduğunu bildirir. İpucu göz ardı edilebilir. Üye olmayan işlevler durumunda, satır içi belirtim ayrıca işlev için dahili bağlama oluşturur (§R.3.3). Sınıf bildiriminde tanımlanan bir işlev (§R.5.2.2, §R.8.2.5) varsayılan olarak satır içi belirtime sahiptir.

    Satır içi belirtimi olan bir üye işlevin, göründüğü her çeviri biriminde tam olarak aynı tanıma sahip olması gerekir.

    Bir üye işlevin, bir ikame olarak değerlendirilmesi için bir sınıf bildirirken satır içi belirtimle açıkça bildirilmesi gerekmez. Satır içi belirtim yoksa, ilk işlev çağrısından önce satır içi belirtimi olan bir tanım görünmediği sürece bağlama dış olacaktır.

    satır içi int g(); // X::g() dahili bağlamaya sahiptir

    int i = p->f(); // X::f() artık dış bağlamadır

    satır içi int X::f() // hata: tanımdan önce çağrı

    satır içi int X::h() // X::h() artık dahili olarak bağlıdır

    Sanal belirtim yalnızca bir sınıf bildirilirken statik olmayan üye işlevlerin bildirimlerinde kullanılabilir (bkz. §R.10.2).

    R.7.1.3 typedef spesifikasyonu

    Typedef bildirimleri daha sonra temel veya türetilmiş türleri belirlemek için kullanılabilecek tanımlayıcıları belirtir. İşlev tanımında typedef belirtimine izin verilmez (§R.8.3).

    Typedef bildiriminin kapsamı (§R.3.2) kapsamında, bildirimcilerden herhangi birinin bir kısmında görünen herhangi bir tanımlayıcı, sözdizimsel olarak bir anahtar kelimeye eşdeğer hale gelir ve §R.8'de açıklandığı gibi bu tanımlayıcıyla ilişkili türü belirtir. Bu nedenle, typedef adı başka bir türün eş anlamlısıdır. Sınıf bildiriminden (§R.9.1) farklı olarak typedef-name yeni bir tür eklemez. Örneğin, anlattıktan sonra

    tasarımlar

    yasal açıklamalardır, mesafe int türündedir ve metricp "pointer to int" türündedir.

    Bir typedef, bir adı, türün orijinal olarak bildirildiği kapsamda bile daha önce başvurulan bir türü yeniden gösterecek şekilde yeniden tanımlamak için kullanılabilir; örneğin,

    typedef struct s (/*… */) s;

    Typedef'te tanımlanan isimsiz bir sınıf, typedef'te kullanılan adı kendi adı olarak alır; örneğin,

    typedef struct (/*… */) S; // yapının adı S oldu

    Bir typedef, başka bir türü belirtmek için aynı kapsamda bildirilen bir türün adını geçersiz kılamaz; örneğin,

    typedef int kompleksi; // hata: yeniden tanımlama

    Benzer şekilde, aynı kapsamda bildirilen bir türün adını taşıyan bir sınıfı, başka bir türü temsil edecek şekilde bildiremezsiniz; örneğin,

    sınıf kompleksi(/*… */); // hata: yeniden tanımlama

    Bir sınıfı belirten typedef adı, sınıf adıdır (§R.9.1). Eşanlamlılık şu öneklerden sonra kullanılamaz: sınıf, yapı ve birlik, ayrıca sınıfın kendi bildirimindeki yapıcıların ve yıkıcıların adlarında, örneğin,


    Sa = T(); // İyi

    R.7.1.4 Tip şablonu spesifikasyonu

    Bir tür şablonu spesifikasyonu, bir tür veya işlev ailesini belirtmek için kullanılır (bkz. §R.14).

    R.7.1.5 arkadaş spesifikasyonu

    Arkadaş belirtimi sınıf üyelerine erişimi belirtmek için kullanılır (bkz. §R.11.4).

    R.7.1.6 Tip spesifikasyonu

    Tip spesifikasyonu şunları içerir:

    spesifikasyon tipi:
    basit tip adı
    sınıf spesifikasyonu
    numaralandırma spesifikasyonu
    karmaşık tip spesifikasyonu

    Bir nesneyi tanımlarken const ve volatile anahtar sözcükleri herhangi bir yasal tür spesifikasyonuna eklenebilir. Diğer tüm durumlarda, beyanda birden fazla tip spesifikasyonu bulunamaz. Const belirtimine sahip bir nesne başlatılabilir ancak değeri daha sonra değiştirilmemelidir. Const belirtimine sahip bir nesne, açıkça extern olarak bildirilmedikçe, harici bağlantıya tabi değildir ve başlatılması gerekir (§R.8.4, §R.12.1). Sabit bir ifadeyle başlatılan const belirtimine sahip bir tam sayı, sabit bir ifadede kullanılabilir (§R.5.19). Const belirtimine sahip bir dizinin her öğesi aynı belirtime sahiptir ve const belirtimine sahip bir sınıf nesnesinin statik olmayan, işlev olmayan her üyesi, const olarak kabul edilir (§R.9.3.1). Yapıcı veya yıkıcısı olmayan ve const belirtimine sahip türdeki bir nesne salt okunur belleğe yerleştirilebilir. Böyle bir nesnenin herhangi bir kısmına yazma girişimi ya özel bir adresleme durumuyla sonuçlanacak ya da sanki nesnenin const özelliği yokmuş gibi iz bırakmadan geçecektir.

    Geçici spesifikasyona sahip nesnelerin uygulamadan bağımsız bir açıklaması yoktur. Bu, çevirmene bu nesneyle ilişkili çok fazla optimizasyondan kaçınması konusunda bir ipucu görevi görür; çünkü nesnenin değeri, çevirmenden gizlenen şekillerde değişebilir. Geçici spesifikasyona sahip bir dizinin her öğesi aynı spesifikasyona sahiptir ve uçucu spesifikasyona sahip bir sınıfın nesnesinin statik olmayan, işlevsiz her üyesinin kendisi de uçucu olarak kabul edilir (§R.9.3.1).

    Bildirimde type-spec mevcut değilse int olarak verildiği varsayılır.

    basit tip adı:
    tam sınıf adı
    nitelikli tür adı

    İnt ile birlikte birden fazla hizmet sözcüğünü uzun veya kısa olarak belirtemezsiniz. Tek başına da kullanılabilirler, bu durumda türün int olduğu kabul edilir. Long servis kelimesi double ile birlikte görünebilir. Char, short, int veya long ile birden fazla imzalı veya imzasız hizmet sözcüğü belirtemezsiniz. Tek başına da kullanılabilirler, bu durumda türün int olduğu kabul edilir. İmzalı belirtim, karakter nesnelerinin ve bit alanlarının imzalandığını belirtir; diğer tamsayı türleri için bu belirtim gereksizdir.

    Class-spec ve enum-spec yapıları sırasıyla §R.9 ve §R.7.2'de tanımlanmıştır.

    karmaşık tip spesifikasyonu:
    sınıf-terminal-word sınıf-adı
    sınıf sözcüğü kimliği tanımlayıcısı
    sınıf kelimesi:

    Bir tanımlayıcı verilirse, karmaşık tür spesifikasyonu bunu bir sınıf adı olarak tanımlar (bkz. §R.9.1).

    Bir birleşim belirtimi tarafından tanımlanan bir ad tanımlanmışsa, bu bir birleşim olarak tanımlanmalıdır. Bir sınıf belirtimi ile tanımlanan bir ad tanımlanmışsa, bu durumda bir sınıf veya yapı belirtimi ile tanımlanması gerekir. Bir yapı belirtimi ile tanımlanan bir ad tanımlanmışsa, bunun bir sınıf veya yapı belirtimi ile tanımlanması gerekir. İç içe tür adları (§R.9.7), çevreleyen sınıfın adıyla nitelenmelidir:

    nitelikli tür adı:
    sınıf adı:: nitelikli tür adı
    tam sınıf adı:
    nitelikli sınıf adı
    :: nitelikli sınıf adı
    nitelikli sınıf adı:
    sınıf-adı:: nitelikli-sınıf-adı

    Sınıf adına göre nitelenen ad, bu sınıfta veya bu sınıfın temel sınıfında tanımlanmış bir tür olmalıdır. Her zamanki gibi, türetilmiş bir sınıfta bildirilen bir ad, temel sınıflardan bu adı taşıyan üyeleri görünmez hale getirir (bkz. §R.3.2).

    R.7.2 Numaralandırma açıklaması

    Numaralandırma, ad sabitlerine sahip ayrı bir tamsayı türüdür (§R.3.6.1). Kapsamındaki adı enum-name yapısı haline gelir, yani. ayrılmış bir kelime olarak hizmet eder.

    numaralandırma adı:
    numaralandırma spesifikasyonu:
    enum tanımlayıcı opt ( enum-list )
    numaralandırma listesi:
    numaralandırma öğesi
    numaralandırma listesi, numaralandırma öğesi
    numaralandırma öğesi:
    tanımlayıcı = sabit ifade

    Bir numaralandırma listesindeki tüm tanımlayıcılar bildirilen sabitler olarak kabul edilir ve sabitlerin gerekli olduğu her yerde görünebilir. = ile numaralandırma elemanları yoksa, sabitlerin değerleri sıfırdan başlar ve listede soldan sağa doğru ilerledikçe sırayla birer birer artar. Bir numaralandırma öğesi = ile karşılaşırsa, bu durumda onun tanımlayıcısı verilen değeri alır ve başlangıç ​​kısmı olmayan sonraki tanımlayıcılar, verilenden başlayarak artan değerler alacaktır. Bir enum üyesinin değeri int türünde veya standart tamsayı dönüşümleri (§R.4.1) kullanılarak int'ye dönüştürülebilecek bir değer olmalıdır.

    Numaralandırma öğelerinin adları, sıradan değişkenlerin adlarından ve aynı kapsamdaki diğer numaralandırma öğelerinin adlarından farklı olmalıdır. Numaralandırma elemanlarının değerlerinin birbirinden farklı olması gerekmez. Bir numaralandırma öğesinin, tanımlayıcısının veya başlatma değerinin (varsa) göründüğü andan itibaren bildirildiği kabul edilir. Örneğin, tanımlarda

    a, c ve d değerleri 0'a, b ve e 1'e, f ise 3'e ayarlanır.

    Her numaralandırma, diğer tüm tamsayı türlerinden farklı bir tamsayı türüdür. Bir numaralandırma öğesinin türü verilen numaralandırmadır. Bir enum üyesinin veya enum türündeki bir nesnenin değeri, standart tam sayı dönüşümleri (§R.4.1) kullanılarak bir tam sayıya dönüştürülür. Örneğin, aşağıdaki kod parçasında:

    numaralandırma rengi (kırmızı, sarı, yeşil=20, mavi);

    color, farklı renkleri tanımlayan bir tamsayı türü olarak tanımlanır, col bu türden bir nesne olarak tanımlanır ve cp, bu türden bir nesneye yönelik bir işaretçidir. Tip rengindeki bir nesnenin olası değerleri kırmızı, sarı, yeşil, mavidir. Bu değerler 0, 1, 20 ve 21 tamsayı değerlerine dönüştürülebilir. Her numaralandırma ayrı bir tür olduğundan, color türündeki bir nesneye yalnızca renk değerleri atanabilir, örneğin,

    renk c = 1; // hata: tür uyuşmazlığı
    // int'den color'a dönüşüm yok
    int i = sarı; // tamam: sarı, değeri 1 olan int'ye dönüştürülür
    // standart tamsayı dönüşümü

    Ayrıca bkz. §R.18.3.

    Bir sınıfta (§R.9) tanımlanan bir numaralandırmanın üyeleri, o sınıfın kapsamındadır ve yalnızca açık bir sınıf adı niteliği (§R.5.1) ile o sınıfın üye işlevlerinin dışından erişilebilir. Numaralandırma türünün adı bu sınıfta yereldir (§R.9.7), örneğin,

    açıklama listesi:
    açıklama listesi açıklaması

    Gerekli bağlama, değişmez bir dize kullanılarak belirtilir. Amacı tanımlanmış uygulamadır. Ancak tüm uygulamaların bir C işlevine ("C") ve bir C++ işlevine ("C++") bağlanabilmesi gerekir. Varsayılan olarak bağlama "C++" olarak ayarlanmıştır; örneğin,

    karmaşık sqrt(karmaşık); // C++ ile varsayılan bağlama
    çift ​​kare(çift); // C'ye bağlan

    Bağlantı özellikleri iç içe yerleştirilebilir. Bağlantı spesifikasyonu bir kapsam belirtmez. Bağlantı spesifikasyonu yalnızca dosya kapsamında oluşabilir (§R.3.2). Bir sınıfa yönelik bağlantı belirtimi, içinde bildirilen nesnelere ve üye olmayan işlevlere atıfta bulunur. Bir fonksiyona atıfta bulunan bir ilişki-belirtimi aynı zamanda onun içinde tanımlanan tüm nesneler ve fonksiyonlar için de geçerlidir. Uygulama tarafından bilinmeyen bir dize içeren bir bağlantı açıklamasının hatalı olduğu kabul edilir.

    Bir fonksiyonun birden fazla bağlantı spesifikasyonu varsa, bunların tutarlı olması gerekir; aynı değişmez dizeyi ayarlayın. Bağlantı belirticisi olmayan bir işlev bildirimi, o işlev için ilk bağlantı belirticiden önce gelmemelidir. Bir işlev, bir bağlantı belirtimini açıkça belirttikten sonra bile, bir bağlantı belirtimi belirtmeden bildirilebilir, ancak daha önceki bir bildirimde açıkça belirtilen bir bağlantı, böyle bir işlev bildirimiyle ortadan kaldırılmayacaktır.

    Belirli bir ada sahip aşırı yüklenmiş işlevler kümesinden (§R.13) en fazla biri C bağlamasına sahip olabilir, bkz. §R.7.4.

    Bağlama nesneler için ayarlanabilir, örneğin:

    int_flsbuf(imzasız,_iobuf*);

    Bir bağlantı belirtimi verildiğinde, işlevler ve nesneler ( ) içerisinde statik olarak tanımlanabilir. Bu tür işlevler veya nesneler için bağlama komutu dikkate alınmaz. Aksi takdirde, bir bağlantı belirtilirken bildirilen bir işlev, açıkça harici olarak bildirilmiş gibi değerlendirilir; örneğin, aşağıdaki ikinci bildirim hatalıdır (§R.7.1.1):

    statik çift f(); // hata

    Bir yapının içinde bildirilen bir nesne

    ancak kesin kabul edilir ve yalnızca tanımlanmaz.

    C++'daki nesneleri diğer dillerde tanımlanan nesnelere bağlamak ve geri bağlantı yapmak dile ve uygulamaya bağlıdır. Bu tür bir bağlantı yalnızca nesnelerin bellekte tahsis edilmesine yönelik algoritmaların iki dil için yeterince benzer olması durumunda mümkündür.

    Bir programlama dili adı, bir bağlantı spesifikasyonundan gerçek bir dizedeki bir bağlantıyı belirtmek için kullanılıyorsa, adın yazılışının Ada (ADA yerine) ve Fortran gibi dili tanımlayan belgeden kopyalanması önerilir. (FORTRAN yerine).

    departman 304

    Laboratuvar No. 2

    "Programlama" konusunda

    Bir öğrenci tarafından tamamlandı 315 gr.

    Startseva A.V.

    Doç. kafe 304

    Bakumenko N.S.

    ________________________

    Ders:"ŞartnameİLE++"

    Çalışmanın amacı: Bir programın veya altprogramın ana özelliklerinin açıklamasını yazmayı öğrenin. Belirtim her zaman şu özellikleri içerir: Bu program veya alt program tarafından çözülen problemin ifadesi, ilk verilerin açıklaması, sonuçların açıklaması, özel durumların açıklaması.

    Durum:

    9.59. Bir teklif verildi. Harf sayısını belirleyin "Ö" onun içinde.

    9.101.Söz verilmiştir. Üçüncü ve son harflerini değiştirin.

    9.155 Bir kelimede yalnızca iki özdeş harf vardır. Bul onları.

    Verim:

    İsim:Vvod

    Tanım:İşlev konsoldan bir karakter değeri okur.

    İlk veri:

    İsim: 1) sembol; 2) S;

    Tanım: 1) belirli bir değere (belirli bir sembol) atanmış bir değişken; 2) belirli bir cümle veya kelime, ana programdan bir dizi karakter olarak iletilen bir alt program parametresidir.

    Tür ve Aralık: 1) Karakter, herhangi bir karakter; 2) dize, herhangi bir karakter

    Sonuç: fonksiyon, kullanıcı tarafından klavyeden girilen verileri okur.

    Olağanüstü açıklamalar:

    Tanım: 1) Yanlış türde veri girildi 2) Program için gerekenden fazla veri girildi

    Tedavi: 1), 2) - program oluşturulurken hataların bulunduğunu belirten bir mesaj görüntülenecektir.

    İsim:Vuvod

    Tanım:İşlev, konsoldan bir tamsayı, karakter değeri ve dize görüntüler.

    İlk veri:

    İsim: 1) n 2) s; 3) h.

    Tanım: n, s, h., bir fonksiyonun (belirli bir görevin) sonucunun atandığı değişkenlerdir. 1) Alt program bir değer döndürür - harf sayısı "Ö" belirli bir teklifte. 2) Altprogram, ikinci ve son elemanın değiştirildiği (üçüncü ve son harflerin değiştirildiği bir kelime) char tipinde bir dizi döndürür. 3) Alt program bir değer döndürür - bir harf , bu kelimede tekrarlanıyor.

    TipVemenzil: 1) int; 2) dize; 3) karakter.

    Sonuç: fonksiyon programın sonucunu görüntüler, yani n, s, h değişkenlerini görüntüler.

    İsim:İşlev

    Tanım: Harf sayısını belirtir "Ö" belirli bir teklifte.

    İlk veri:

    İsim: 1) S; 2) sembol, 3) n

    Tanım: 1) Kaynak dizisi (verilen cümle) - ana programdan bir karakter kümesi olarak aktarılan bir alt rutin parametresi. 2) "o" sembolüne atanan değişken

    Tür ve Aralık: 1) dize, herhangi bir karakter. 2) Char, hakkında sembol.

    Sonuç:

    İsim: cout

    Tanım: Alt program n değişkeninin değerini yazdırır.

    Tür ve aralık int

    Olağanüstü açıklamalar

    Tanım: cümle o harfini içermiyor.

    Tedavi: cümlenin o harfini içermediğine dair bir mesaj görüntülenir.

    İsim:İşlev1

    Tanım:İşlev, kullanıcı tarafından belirlenen kelimenin üçüncü ve son harflerini değiştirir.

    İlk veri:

    İsim: 1) S; 2) l, k 3) sıcaklık; 4)

    Tanım: 1) Kaynak dizisi (verilen kelime) - ana programdan bir karakter kümesi olarak aktarılan bir alt rutin parametresi. 2) dizinin ikinci elemanının değerine atanan bir değişken. 2) verilen kelimenin üçüncü ve son harfinin endekslerine atanan değişkenler. 3) ilk önce dizinin ikinci elemanının değerine atanan bir değişken, ardından program sırasında yeniden atama gerçekleşir.

    Tür ve Aralık: 1) dize, herhangi bir karakter; 2) dahili 3) dahili.

    Sonuç:

    İsim: cout

    Tanım: Alt program s değişkeninin değerini yazdırır.

    Tür ve Aralık: sicim.

    Olağanüstü açıklamalar

    Tanım: 1) dizinin yanlış atanması, 2) yanlış türde indeksler.

    Tedavi: 1),2) - program oluşturulurken hataların bulunduğunu belirten bir mesaj görüntülenecektir.

    İsim:İşlev2

    Tanım: fonksiyon verilen kelimenin içerdiği iki özdeş harfi bulur.

    İlk veri:

    İsim: 1) S; 2) h.

    Tanım: 1) Kaynak dizisi (verilen kelime) - ana programdan bir karakter kümesi olarak aktarılan bir alt rutin parametresi.

    Tür ve Aralık: 1) karakter

    Sonuç:

    İsim: cout

    Tanım: Alt program h değişkeninin değerini yazdırır.

    Tür ve Aralık: karakter.

    İstisnai durumlar:

    Tanım: 1) kelime aynı harfleri içermiyor 2) kelimenin tamamı aynı harflerden oluşuyor 3) hatalı dizi tanımı

    Tedavi: 1), 2) - "-1" sayısı görüntülenir. 3) program oluşturulurken hataların bulunduğunu belirten bir mesaj görüntülenecektir.

    Şartname

    Şartname- (geç lat. spesifikasyon, enlem türlerinden - cins, tür, çeşitlilik ve facio - do) şu anlama gelebilir:

    1. belirli özelliklerin tanımı ve listesi, bir şeyin ayrıntılı bir sınıflandırması;
    2. bazı teknik nesnelerin karşıladığı bir dizi gereksinim ve parametreyi ifade eden bir mühendislik terimi (örneğin, bir nehir üzerindeki bir köprü, maksimum toplam yük ağırlığı, maksimum aks yükü, maksimum rüzgar hızı vb. gibi parametreleri karşılar).

    Birleşik Tasarım Dokümantasyon Sisteminde (ESKD) verilen tanıma göre, Şartname- montaj ünitesinin, kompleksin, kitin bileşimini belirleyen ana tasarım belgesi. Şartname, montajın veya çalışma çiziminin parçası olan herhangi bir ürünün, yapının, kurulumun vb. bileşenlerinin ve parçalarının ayrıntılı bir listesini içerir.

    Politeknik Sözlüğünde verilen tanıma göre, Şartname- Bir ürünün bileşimini belirleyen tablo şeklinde hazırlanmış bir belge. Bileşenlerin tanımlarını, adlarını ve miktarlarını içerir.

    Çeşitler

    Pozisyon fiyatları ve ek koşullar (fiyat, paketleme, teslimat şartları ve koşulları, tarafların ayrıntıları) ile desteklenen spesifikasyon, tedarik sözleşmesinin ayrılmaz bir parçası olabilir veya ticari bir teklif görevi görebilir. Bu tür spesifikasyonlar, mekanizmaların, ekipmanların vb. temini (imalat) sözleşmesinin görev tanımına (TOR) yanıt olarak veya ankete göre oluşturulur. Şartname bir takım teknik (ve diğer) koşulları (TS) içerebilir, ancak bu set genellikle TK'nin teknik gerekliliklerini doğrular. TK spesifikasyonunun kendisi teslimat şartlarına ilişkin TK'ya bir yanıt değildir, yalnızca bir yanıttır.

    Hesap spesifikasyonu - hesaplaşma belgesinin bir parçası.

    Teknik özellikler - teknik bir cihazın özellikleri.

    Bilişim ve bilgisayar teknolojisinde:

    • Dosya sistemi formatı spesifikasyonu (UDF, vb.)
    • Programlama dili özellikleri ve açıklamaları (CLI vb.)

    SMILES, bir kimyasal molekülün bileşiminin ve yapısının açık bir şekilde tanımlanmasına yönelik bir spesifikasyondur.

    Spesifikasyon şunları içerebilir:

    • Açıklayıcı bir ad, numara veya başka bir spesifikasyon tanımlayıcı
    • Son revizyonun zamanı ve revizyonun yapıldığı işaret
    • Telif hakkının kime ait olduğunu, belgenin sahibini ve kaynağını belirten bir logo veya ticari marka
    • Belge uzunsa belgenin içeriği
    • Spesifikasyon sorunları, güncellemeler ve sapmalardan sorumlu kişi veya kuruluş
    • Şartnamenin önemi, kapsamı ve amacı
    • Şartnamenin özünü açıklığa kavuşturmak için terimler, tanımlar ve kısaltmalar
    • Belirlenen tüm gereksinimler ve özellikler için doğrulama yöntemleri
    • Malzeme gereksinimleri: fiziksel, mekanik, elektriksel, kimyasal ve diğerleri. Hedef ve İzin Verilen
    • performans testi gereksinimleri. Hedef ve İzin Verilen
    • Görseller, fotoğraflar veya teknik çizimler
    • Beceri Gereksinimleri
    • Sertifikasyon gereksinimleri
    • Güvenlik gereksinimleri
    • Çevresel Gereklilikler
    • Kalite Güvence Kontrolü, Kontrol Numunesi, Kontrol, İş Kabul Kriterleri
    • Şartnamenin yerine getirilmesinden sorumlu kişi veya kuruluş
    • Gerçekleştirme ve teslimat
    • Sapma koşulları, yeniden kontrol, revizyon, ölçüm ve karakteristiklerin düzeltilmesi
    • Belgenin netliğini sağlamak için gerekli olabilecek spesifikasyon metnindeki referanslar ve alıntılar
    • Gerekirse imzalar ve izinler
    • Belgenin dahili kullanıma yönelik olması durumunda tutarlı geliştirme, doğrulama ve yürütme için değişiklik kontrolü (özel bilgisayar programları kullanılarak)
    • Ayrıntıları ortaya çıkaran, netlik katan veya ödemeyi açıklayan uygulamalar

    Ayrıca bakınız

    Bağlantılar

    Notlar


    Wikimedia Vakfı. 2010.

    Eş anlamlı:
    • Petrovskoye (Yaroslavl bölgesi)
    • Manuel II Palaiologos

    Diğer sözlüklerde "Şartname"nin ne olduğuna bakın:

      ŞARTNAME- Bir ürünün bileşimini belirleyen tablo şeklinde hazırlanmış bir belge. Bileşenlerin tanımını, adlarını ve miktarlarını (ürünleri tamamlamak için kullanılan ana belge) içerir. Finansal terimler sözlüğü. ... ... Finansal kelime dağarcığı

      ŞARTNAME- 1) kendini ayırt etme anlamına gelen felsefi bir terim. 2) Hammaddenin veya eski şeylerin yeni bir forma veya yeni formlara işlenmesi, onlara yeni şeylerin görünümü verilmesi. 3) nominal veya tam boyama; bütünü oluşturan parçaları saymak; kayıt... ... Rus dilinin yabancı kelimeler sözlüğü

      Şartname- Ayrıca. spesifikasyon, mikrop. Şartname. enlem. tür türler + facio yapar. 1. spesifikasyon Neyin belirli özelliklerinin tanımı ve listesi; sınıflandırma. BAS 1. Surlarda silahlar, havan topları var ... ... Rus Dilinin Galyacılığın Tarihsel Sözlüğü

      Şartname- numaralandırma, stok notu, tanım, sınıflandırma, belge, açıklama Rusça eşanlamlıların sözlüğü. spesifikasyon adı, eş anlamlıların sayısı: 6 belge (82) ... Eşanlamlılar sözlüğü

      Şartname- (form No. TORG 10), faturalanan mal partisi kutu, fıçı vb. içine paketlendiğinde kullanılır. Şartname, deponun (depo) maddi sorumlusu tarafından iki nüsha halinde düzenlenir; bir kopyası ektedir... ... İşletme başkanının ansiklopedik sözlük referans kitabı

      ŞARTNAME- (enlem. spesifikasyon) 1) medeni hukukta, mülkiyet haklarının ortaya çıkmasının bir yolu olarak işlemekle aynı şey; 2) her sınıf, marka, ürün için miktarın belirtilmesiyle birlikte teklif edilen veya tedarik edilen malların bir listesi ve gerekirse ... ... Hukuk Sözlüğü

      Şartname- üretilen veya satışa sunulan ürünlerin miktarını, derecesini, markasını, kalite özelliklerini, fiyatlarını gösteren bir liste. İş terimleri sözlüğü. Akademik.ru. 2001... İş terimleri sözlüğü

      ŞARTNAME- 1) özel dikkat gösterilmesi gereken detayların listelenmesi 2) Teknik tasarım dokümantasyonunun ana belgelerinden biri (bir ürün, ürünler vb. için), genellikle adını belirten bir tablo şeklinde gerçekleştirilir. . Büyük Ansiklopedik Sözlük

      ŞARTNAME- satışa veya teslimata sunulan malların miktarını, derecesini, markasını, kalite özelliklerini ve gerekirse fiyatlarını gösteren bir liste. Raizberg B.A., Lozovsky L.Sh., Starodubtseva E.B. Modern ekonomi sözlüğü. ... ... Ekonomik sözlük

      ŞARTNAME- ŞARTNAME, özellikler, eşler. 1. yalnızca birimler Bölüm kapsamındaki eylem. belirtin; geliştirme, ayrıntıların numaralandırılması, ayrıntılar (kitap). 2. Belirlendiği, üretilen öğeyi (mekanizma, makine vb.) açıklayan bir belge ... ... Ushakov'un Açıklayıcı Sözlüğü

    Kitabın

    • , Sheng Liang. Bu kitap JNI arayüzünü açıklamaktadır. Kitap aşağıdaki konulara ilgi duyanlar için faydalı olacaktır: - C ve C++ gibi programlama dillerinde yazılmış kodun entegrasyonu ... 1009 ruble karşılığında satın alın
    • JNI arayüzü. Programlama Kılavuzu ve Şartname, Sheng Lieng. Kitapta, Java dili ile diğer dillerde yazılmış yerel kod arasında bir arayüz olan Java Yerel Arayüzü (JNI) açıklanmaktadır. Java programcıları için faydalı olacaktır...

    Ortak Dil Belirtimi (CLS)

    Bildiğiniz gibi farklı programlama dillerinde aynı program yapıları kendilerine özgü, dile özgü bir şekilde ifade edilir. Örneğin, C#'ta dize birleştirme artı işaretiyle (+) gösterilirken VB'de bu genellikle ve işaretiyle (&) yapılır. Aynı programlama deyimi iki farklı dilde ifade edilse bile (örneğin, değer döndürmeyen bir işlev), sözdiziminin yüzeyde çok farklı görünme ihtimali çok yüksektir.

    Daha önce gösterildiği gibi, ilgili derleyicilerin (bu durumda csc.exe ve vbc.exe) benzer bir CIL talimatları seti oluşturması nedeniyle .NET çalışma zamanı için sözdizimindeki bu tür küçük değişiklikler önemli değildir. Ancak diller genel işlevsellik düzeyi açısından yine de farklılık gösterebilir. Örneğin, bir .NET dili imzasız verileri temsil edecek bir anahtar kelimeye sahip olabilir veya olmayabilir ve işaretçi türlerini destekleyebilir veya desteklemeyebilir. Tüm bu olası farklılıklar nedeniyle, .NET'i destekleyen tüm dillerin karşılaması gereken bazı temel gereksinimlere sahip olmak harika olurdu.

    CLS (Ortak Dil Belirtimi - programlama dilleri için ortak belirtim) CLR tarafından sunulabilen ve aynı anda kullanılabilen program kodunu oluşturmak için her bir .NET derleyicisinin desteklemesi gereken minimum ve tam işlevsellik kümesini ayrıntılı olarak açıklayan bir kurallar dizisidir. .NET platformunu hedefleyen tüm dillere aynı şekilde erişilebilmektedir. Birçok yönden CLS, CTS'de tanımlanan tüm işlevlerin yalnızca bir alt kümesi olarak düşünülebilir.

    Sonuçta CLS, derleyici yazarlarının, ürünlerinin .NET dünyasında sorunsuz bir şekilde çalışabilmesi için isterlerse uymaları gereken bir tür kurallar dizisidir. Bu kuralların her birinin basit bir adı vardır ("CLS Kuralı 6" gibi) ve derleyicileri oluşturanları ve (bir şekilde) onlarla etkileşime girecek olanları nasıl etkilediğini açıklar. CLS'deki en önemli şey Kural 1, bunu söylüyor CLS kuralları yalnızca tanımlandıkları düzeneğin dışında kullanıma sunulan bir türün parçalarını ilgilendirir .

    Bu kuraldan, CLS'deki diğer tüm kuralların bir .NET türünün dahili çalışma ayrıntılarını oluşturmak için kullanılan mantık için geçerli olmadığı sonucuna varabilirsiniz (ve yapmalısınız). Bir türün CLS'ye uyması gereken tek yönü kendisidir. üyelerin tanımları(yani adlandırma kuralları, parametreler ve dönüş türleri). Üye uygulama mantığının bir parçası olarak, dış dünya için herhangi bir rol oynamayacağı için CLS ile tutarlı olmayan herhangi bir sayıda hile kullanılabilir.

    Örneğin büyük/küçük harf duyarlılığını ele alalım. IL dili büyük/küçük harfe duyarlıdır. Büyük/küçük harfe duyarlı dillerde yazan geliştiriciler, değişken adlarını seçerken bu büyük/küçük harf duyarlılığının sağladığı esneklikten geniş ölçüde yararlanır. Ancak Visual Basic 2010 dili büyük/küçük harfe duyarlı değildir. CLS spesifikasyonu, herhangi bir CLS uyumlu kodun yalnızca büyük/küçük harf farkı olan herhangi bir ad çiftini içermemesi gerektiğini belirterek bu sorunu çözer. Bu nedenle Visual Basic 2010 kodu CLS uyumlu kodla çalışabilir.

    Bu örnek, CLS'nin iki şekilde çalıştığını göstermektedir.