const_seg
Segment belirtir burada const değişkenleri .obj dosyasında saklanır.
#pragma const_seg( [ [ { push | pop}, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] )
Notlar
Terimlerin anlamına segment ve bölüm bu konudaki değiştirilemez.
obj dosyaları ile görüntülenebilir dumpbin uygulama..Obj dosyasında varsayılan kesimi const değişkenleri olan .rdata.Bazı const fazla ilerleyemezdik gibi değişkenleri kod akımına otomatik olarak inlined.İnlined kod .rdata içinde görünmez.
const_seg herhangi bir parametre ile .rdata için segment sıfırlar.
İtme(isteğe bağlı)
İç derleyici yığınında bir kayda geçirir.A İtme sahip bir tanımlayıcısı ve kesim adı.POP (isteğe bağlı)
İç derleyici yığının başından bir kaydını kaldırır.tanımlayıcı (isteğe bağlı)
Aşağıdakilerle kullanıldığında İtme, derleyici iç yığında kaydı için bir ad atar.Aşağıdakilerle kullanıldığında pop, kayıtları kadar iç yığından POP tanımlayıcısı kaldırılır; tanımlayıcısı bulunamadı iç yığın üzerinde hiçbir şey popped.Kullanarak tanımlayıcısı sağlayan tek bir popped birden çok kayıt pop komut.
"kesim adı"(isteğe bağlı)
Bir parçasının adı*.* Aşağıdakilerle kullanıldığında pop, yığın popped ve kesim adı etkin kesimi adı haline gelir."segment-class" (isteğe bağlı)
Sürüm 2.0 için önce C++ ile uyumluluk için dahil.Yoksayılır.
Örnek
// pragma_directive_const_seg.cpp
// compile with: /EHsc
#include <iostream>
const int i = 7; // inlined, not stored in .rdata
const char sz1[]= "test1"; // stored in .rdata
#pragma const_seg(".my_data1")
const char sz2[]= "test2"; // stored in .my_data1
#pragma const_seg(push, stack1, ".my_data2")
const char sz3[]= "test3"; // stored in .my_data2
#pragma const_seg(pop, stack1) // pop stack1 from stack
const char sz4[]= "test4"; // stored in .my_data1
int main() {
using namespace std;
// const data must be referenced to be put in .obj
cout << sz1 << endl;
cout << sz2 << endl;
cout << sz3 << endl;
cout << sz4 << endl;
}
Comments
Bkz: /SECTION , kullanmamalıdır bölümü oluştururken, adları listesi.
Başlatılmamış verileri için bölümleri de belirleyebilirsiniz (data_seg), veri başlatılması geri alındı (bss_seg) ve işlevleri (code_seg).