Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
CComCurrency bir nesne oluşturmak ve yönetmek için yöntemlere ve işleçlere CURRENCY sahiptir.
Sözdizimi
class CComCurrency;
Üyeler
Ortak oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
CComCurrency::CComCurrency |
Bir CComCurrency nesnenin oluşturucusunun. |
Genel yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
CComCurrency::GetCurrencyPtr |
Veri m_currency üyesinin adresini döndürür. |
CComCurrency::GetFraction |
Bir CComCurrency nesnenin kesirli bileşenini döndürmek için bu yöntemi çağırın. |
CComCurrency::GetInteger |
Bir CComCurrency nesnenin tamsayı bileşenini döndürmek için bu yöntemi çağırın. |
CComCurrency::Round |
Bir CComCurrency nesneyi en yakın tamsayı değerine yuvarlama için bu yöntemi çağırın. |
CComCurrency::SetFraction |
Bir CComCurrency nesnenin kesirli bileşenini ayarlamak için bu yöntemi çağırın. |
CComCurrency::SetInteger |
Bir CComCurrency nesnenin tamsayı bileşenini ayarlamak için bu yöntemi çağırın. |
Genel işleçler
| Veri Akışı Adı | Açıklama |
|---|---|
CComCurrency::operator - |
Bu işleç, bir CComCurrency nesne üzerinde çıkarma gerçekleştirmek için kullanılır. |
CComCurrency::operator != |
Eşitsizlik için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator * |
Bu işleç, bir CComCurrency nesne üzerinde çarpma gerçekleştirmek için kullanılır. |
CComCurrency::operator *= |
Bu işleç, bir CComCurrency nesnede çarpma gerçekleştirmek ve sonucu atamak için kullanılır. |
CComCurrency::operator / |
Bu işleç, bir CComCurrency nesne üzerinde bölme gerçekleştirmek için kullanılır. |
CComCurrency::operator /= |
Bu işleç, bir CComCurrency nesne üzerinde bölme gerçekleştirmek ve sonucu atamak için kullanılır. |
CComCurrency::operator + |
Bu işleç, bir CComCurrency nesne üzerinde toplama gerçekleştirmek için kullanılır. |
CComCurrency::operator += |
Bu işleç, bir CComCurrency nesne üzerinde toplama gerçekleştirmek ve sonucu geçerli nesneye atamak için kullanılır. |
CComCurrency::operator < |
Bu işleç, daha azını belirlemek için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator <= |
Bu işleç, eşitliği veya daha azını belirlemek için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator = |
Bu işleç nesneyi yeni bir değere atar CComCurrency . |
CComCurrency::operator -= |
Bu işleç, bir CComCurrency nesne üzerinde çıkarma gerçekleştirmek ve sonucu atamak için kullanılır. |
CComCurrency::operator == |
Bu işleç eşitlik için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator > |
Bu işleç, daha büyük olanını belirlemek için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator >= |
Bu işleç, eşitliği veya daha büyük olanını belirlemek için iki CComCurrency nesneyi karşılaştırır. |
CComCurrency::operator CURRENCY |
Bir nesneyi atar CURRENCY . |
Genel veri üyeleri
| Veri Akışı Adı | Açıklama |
|---|---|
CComCurrency::m_currency |
CURRENCY Sınıf örneğiniz tarafından oluşturulan değişken. |
Açıklamalar
CComCurrency veri türü için CURRENCY bir sarmalayıcıdır. CURRENCY 10.000 ile ölçeklendirilmiş 8 baytlık ikinin tamamlayıcı tamsayı değeri olarak uygulanır. Bu ölçeklendirme, ondalık ayırıcının 15 basamağını ve sağda 4 basamağı olan sabit noktalı bir sayı verir. Veri CURRENCY türü, para içeren hesaplamalar veya doğruluğun önemli olduğu sabit noktalı hesaplamalar için kullanışlıdır.
Sarmalayıcı, CComCurrency bu sabit nokta türü için aritmetik, atama ve karşılaştırma işlemleri uygular. Desteklenen uygulamalar, sabit noktalı hesaplamalar sırasında oluşabilecek yuvarlama hatalarını denetlemek için seçilmiştir.
nesnesi, CComCurrency ondalık noktasının her iki tarafındaki sayılara iki bileşen biçiminde erişim sağlar: ondalık noktasının solundaki değeri depolayan bir tamsayı bileşeni ve ondalık noktasının sağındaki değeri depolayan kesirli bir bileşen. Kesirli bileşen, -9999 () ile +CY_MAX_FRACTION9999 (CY_MIN_FRACTION) arasında bir tamsayı değeri olarak dahili olarak depolanır. yöntemi CComCurrency::GetFraction , 10000 (CY_SCALE faktörüne göre ölçeklendirilmiş bir değer döndürür.
Bir CComCurrency nesnenin tamsayı ve kesirli bileşenlerini belirtirken, kesirli bileşenin 0 ile 9999 aralığındaki bir sayı olduğunu unutmayın. Bu, ABD doları gibi bir para birimiyle ilgilenirken önemlidir. Dolar tutarları genellikle ondalık ayırıcıdan sonra yalnızca iki önemli basamak kullanılarak ifade edilir. Son iki basamak görüntülenmese de bunların dikkate alınması gerekir.
| Değer | Olası CComCurrency atamaları |
|---|---|
| 10,50 ABD doları | CComCurrency(10,5000) veya CComCurrency(10.50) |
| 10,05 ABD doları | CComCurrency(10,500) veya CComCurrency(10.05) |
, CY_MAX_FRACTIONve CY_SCALE değerleri CY_MIN_FRACTIONatlcur.h dosyasında tanımlanır.
Gereksinimler
Üst bilgi: atlcur.h
CComCurrency::CComCurrency
Oluşturucu.
CComCurrency() throw();
CComCurrency(const CComCurrency& curSrc) throw();
CComCurrency(CURRENCY cySrc) throw();
CComCurrency(DECIMAL dSrc);
CComCurrency(ULONG ulSrc);
CComCurrency(USHORT usSrc);
CComCurrency(CHAR cSrc);
CComCurrency(DOUBLE dSrc);
CComCurrency(FLOAT fSrc);
CComCurrency(LONG lSrc);
CComCurrency(SHORT sSrc);
CComCurrency(BYTE bSrc);
CComCurrency(LONGLONG nInteger, SHORT nFraction);
explicit CComCurrency(LPDISPATCH pDispSrc);
explicit CComCurrency(const VARIANT& varSrc);
explicit CComCurrency(LPCWSTR szSrc);
explicit CComCurrency(LPCSTR szSrc);
Parametreler
curSrc
Varolan bir CComCurrency nesnesi.
cySrc
türünde CURRENCYbir değişken.
bSrc, dSrc, fSrc, , lSrc, sSrc, ulSrc, usSrc
üye değişkenine m_currencyverilen ilk değer.
cSrc
üye değişkenine m_currencyverilen ilk değeri içeren bir karakter.
nInteger, nFraction
İlk parasal değerin tamsayı ve kesirli bileşenleri. Daha fazla bilgi için genel bakışa CComCurrency bakın.
pDispSrc
İşaretçi IDispatch .
varSrc
türünde VARIANTbir değişken. Dönüştürmeyi gerçekleştirmek için geçerli iş parçacığının yerel ayarı kullanılır.
szSrc
İlk değeri içeren bir Unicode veya ANSI dizesi. Dönüştürmeyi gerçekleştirmek için geçerli iş parçacığının yerel ayarı kullanılır.
Açıklamalar
Oluşturucu, ilk değerini CComCurrency::m_currencyayarlar ve tamsayılar, dizeler, kayan nokta sayıları, CURRENCY değişkenler ve diğer CComCurrency nesneler dahil olmak üzere çok çeşitli veri türlerini kabul eder. Değer sağlanmazsa m_currency 0 olarak ayarlanır.
Taşma gibi bir hata varsa, oluşturucuların boş bir özel durum belirtimi (throw()) olmayan oluşturucular, hatayı açıklayan bir HRESULT çağrı AtlThrow içerir.
Değer atamak için kayan nokta veya çift değerler kullanırken, değerinin yerine CComCurrency(10,50)ile eşdeğer CComCurrency(10,5000)olduğunu CComCurrency(10.50) unutmayın.
CComCurrency::GetCurrencyPtr
Veri m_currency üyesinin adresini döndürür.
CURRENCY* GetCurrencyPtr() throw();
Dönüş değeri
Veri üyesinin m_currency adresini verir
CComCurrency::GetFraction
Nesnesinin kesirli bileşenini döndürmek için bu yöntemi çağırın CComCurrency .
SHORT GetFraction() const;
Dönüş değeri
Veri üyesinin kesirli bileşenini m_currency döndürür.
Açıklamalar
Kesirli bileşen, -9999 () ile +CY_MAX_FRACTION9999 (CY_MIN_FRACTION) arasında 4 basamaklı bir tamsayı değeridir. GetFraction 10000 (CY_SCALE) ile ölçeklendirilmiş bu değeri döndürür. , CY_MAX_FRACTIONve CY_SCALE değerleri CY_MIN_FRACTIONatlcur.h içinde tanımlanır.
Örnek
CComCurrency cur(10, 5000);
int nFract;
nFract = cur.GetFraction();
ATLASSERT(nFract == 5000);
CComCurrency::GetInteger
Bir CComCurrency nesnenin tamsayı bileşenini almak için bu yöntemi çağırın.
LONGLONG GetInteger() const;
Dönüş değeri
Veri üyesinin m_currency tamsayı bileşenini döndürür.
Örnek
CComCurrency cur(10, 5000);
LONGLONG nInteger;
nInteger = cur.GetInteger();
ATLASSERT(nInteger == 10);
CComCurrency::m_currency
Veri CURRENCY üyesi.
CURRENCY m_currency;
Açıklamalar
Bu üye, bu sınıfın yöntemleri tarafından erişilen ve yönlendirilen para birimini tutar.
CComCurrency::operator -
Bu işleç, bir CComCurrency nesne üzerinde çıkarma gerçekleştirmek için kullanılır.
CComCurrency operator-() const;
CComCurrency operator-(const CComCurrency& cur) const;
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
Çıkarma işleminin sonucunu temsil eden bir CComCurrency nesne döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur1(10, 5000), cur2;
cur2 = cur1 - CComCurrency(4, 5000);
ATLASSERT(cur2 == CComCurrency(6, 0));
CComCurrency::operator !=
Bu işleç, eşitsizlik için iki nesneyi karşılaştırır.
bool operator!= (const CComCurrency& cur) const;
Parametreler
cur
Karşılaştırılacak CComCurrency nesne.
Dönüş değeri
Karşılaştırılan öğe nesneye CComCurrency eşit değilse döndürürTRUE; aksi takdirde, FALSEdöndürür.
Örnek
CComCurrency cur1(10, 5000), cur2(10, 5001);
ATLASSERT(cur1 != cur2);
CComCurrency::operator *
Bu işleç, bir CComCurrency nesne üzerinde çarpma gerçekleştirmek için kullanılır.
CComCurrency operator*(long nOperand) const;
CComCurrency operator*(const CComCurrency& cur) const;
Parametreler
nOperand
Çarpan.
cur
Çarpan CComCurrency olarak kullanılan nesne.
Dönüş değeri
Çarpmanın sonucunu temsil eden bir CComCurrency nesne döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur1(10, 5000), cur2;
cur2 = cur1 * 2;
ATLASSERT(cur2 == CComCurrency(21, 0));
CComCurrency::operator *=
Bu işleç, bir CComCurrency nesnede çarpma gerçekleştirmek ve sonucu atamak için kullanılır.
const CComCurrency& operator*= (long nOperand);
const CComCurrency& operator*= (const CComCurrency& cur);
Parametreler
nOperand
Çarpan.
cur
Çarpan CComCurrency olarak kullanılan nesne.
Dönüş değeri
Güncelleştirilmiş CComCurrency nesneyi döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur(10, 5000);
cur *= 2;
ATLASSERT(cur == CComCurrency(21, 0));
CComCurrency::operator /
Bu işleç, bir CComCurrency nesne üzerinde bölme gerçekleştirmek için kullanılır.
CComCurrency operator/(long nOperand) const;
Parametreler
nOperand
Bölen.
Dönüş değeri
Bölmenin sonucunu temsil eden bir CComCurrency nesne döndürür. Bölen 0 ise, onay hatası oluşur.
Örnek
CComCurrency cur1(10, 5000), cur2;
cur2 = cur1 / 10;
ATLASSERT(cur2 == CComCurrency(1, 500));
CComCurrency::operator /=
Bu işleç, bir CComCurrency nesne üzerinde bölme gerçekleştirmek ve sonucu atamak için kullanılır.
const CComCurrency& operator/= (long nOperand);
Parametreler
nOperand
Bölen.
Dönüş değeri
Güncelleştirilmiş CComCurrency nesneyi döndürür. Bölen 0 ise, onay hatası oluşur.
Örnek
CComCurrency cur(10, 5000);
cur /= 10;
ATLASSERT(cur == CComCurrency(1, 500));
CComCurrency::operator +
Bu işleç, bir CComCurrency nesne üzerinde toplama gerçekleştirmek için kullanılır.
CComCurrency operator+(const CComCurrency& cur) const;
Parametreler
cur
Özgün CComCurrency nesneye eklenecek nesne.
Dönüş değeri
Toplamanın sonucunu temsil eden bir CComCurrency nesne döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur1(10, 5000), cur2;
cur2 = cur1 + CComCurrency(4, 5000);
ATLASSERT(cur2 == CComCurrency(15, 0));
CComCurrency::operator +=
Bu işleç, bir CComCurrency nesne üzerinde toplama gerçekleştirmek ve sonucu geçerli nesneye atamak için kullanılır.
const CComCurrency& operator+= (const CComCurrency& cur);
Parametreler
cur
CComCurrency nesnesi.
Dönüş değeri
Güncelleştirilmiş CComCurrency nesneyi döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur(10, 2500);
cur += CComCurrency(4, 2500);
ATLASSERT(cur == CComCurrency(14, 5000));
CComCurrency::operator <
Bu işleç, daha azını belirlemek için iki CComCurrency nesneyi karşılaştırır.
bool operator<(const CComCurrency& cur) const;
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
İlk nesne ikinciden küçükse döndürür TRUE , FALSE aksi takdirde.
Örnek
CComCurrency cur1(10, 4900);
CComCurrency cur2(10, 5000);
ATLASSERT(cur1 < cur2);
CComCurrency::operator <=
Bu işleç, eşitliği veya daha azını belirlemek için iki CComCurrency nesneyi karşılaştırır.
bool operator<= (const CComCurrency& cur) const;
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
İlk nesne ikinci nesneden küçük veya buna eşitse, FALSE aksi takdirde döndürürTRUE.
Örnek
CComCurrency cur1(10, 4900);
CComCurrency cur2(10, 5000);
ATLASSERT(cur1 <= cur2);
CComCurrency::operator =
Bu işleç nesneyi yeni bir değere atar CComCurrency .
const CComCurrency& operator= (const CComCurrency& curSrc) throw();
const CComCurrency& operator= (CURRENCY cySrc) throw();
const CComCurrency& operator= (FLOAT fSrc);
const CComCurrency& operator= (SHORT sSrc);
const CComCurrency& operator= (LONG lSrc);
const CComCurrency& operator= (BYTE bSrc);
const CComCurrency& operator= (USHORT usSrc);
const CComCurrency& operator= (DOUBLE dSrc);
const CComCurrency& operator= (CHAR cSrc);
const CComCurrency& operator= (ULONG ulSrc);
const CComCurrency& operator= (DECIMAL dSrc);
Parametreler
curSrc
Bir CComCurrency nesnesi.
cySrc
türünde CURRENCYbir değişken.
sSrc, fSrc, lSrc, , bSrc, usSrc, dSrc, cSrc, ulSrc, dSrc
Nesneye atanacak CComCurrency sayısal değer.
Dönüş değeri
Güncelleştirilmiş CComCurrency nesneyi döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur1, cur2(10, 5000);
CURRENCY cy;
// Copying one object to another
cur1 = cur2;
// Using the CURRENCY data type
cy.int64 = 105000;
cur1 = cy;
ATLASSERT(cur1 == cur2);
CComCurrency::operator -=
Bu işleç, bir CComCurrency nesne üzerinde çıkarma gerçekleştirmek ve sonucu atamak için kullanılır.
const CComCurrency& operator-= (const CComCurrency& cur);
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
Güncelleştirilmiş CComCurrency nesneyi döndürür. Taşma gibi bir hata varsa, bu işleç hatayı açıklayan bir HRESULT çağrı ile çağırırAtlThrow.
Örnek
CComCurrency cur(10, 5000);
cur -= CComCurrency(4, 5000);
ATLASSERT(cur == CComCurrency(6, 0));
CComCurrency::operator ==
Bu işleç eşitlik için iki CComCurrency nesneyi karşılaştırır.
bool operator== (const CComCurrency& cur) const;
Parametreler
cur
Karşılaştıracak CComCurrency nesne.
Dönüş değeri
Nesneler eşitse (diğer bir ifadeyle, her iki nesnedeki m_currency hem tamsayı hem de kesirli veri üyeleri aynı değere sahipse) FALSE döndürürTRUE, aksi takdirde.
Örnek
CComCurrency cur1(10, 5000), cur2;
cur2 = cur1;
ATLASSERT(cur1 == cur2);
CComCurrency::operator >
Bu işleç, daha büyük olanını belirlemek için iki CComCurrency nesneyi karşılaştırır.
bool operator>(const CComCurrency& cur) const;
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
İlk nesne ikinciden büyükse, FALSE aksi takdirde döndürürTRUE.
Örnek
CComCurrency cur1(10, 5100);
CComCurrency cur2(10, 5000);
ATLASSERT(cur1 > cur2);
CComCurrency::operator >=
Bu işleç, eşitliği veya daha büyük olanını belirlemek için iki CComCurrency nesneyi karşılaştırır.
bool operator>= (const CComCurrency& cur) const;
Parametreler
cur
Bir CComCurrency nesnesi.
Dönüş değeri
İlk nesne ikinci nesneden büyük veya buna eşitse, FALSE aksi takdirde döndürürTRUE.
Örnek
CComCurrency cur1(10, 5100);
CComCurrency cur2(10, 5000);
ATLASSERT(cur1 >= cur2);
CComCurrency::operator CURRENCY
Bu işleçler, bir CComCurrency nesneyi bir veri türüne göndermek için CURRENCY kullanılır.
operator CURRENCY&() throw();
operator const CURRENCY&() const throw();
Dönüş değeri
Bir nesneye CURRENCY başvuru döndürür.
Örnek
CComCurrency cur(10, 5000);
CURRENCY cy = static_cast<CURRENCY>(cur); // Note that explicit cast is not necessary
ATLASSERT(cy.int64 == 105000);
CComCurrency::Round
Para birimini belirtilen sayıda ondalık basam aya yuvarlama için bu yöntemi çağırın.
HRESULT Round(int nDecimals);
Parametreler
nDecimals
0 ile 4 arasında yuvarlanacak basamak m_currency sayısı.
Dönüş değeri
Başarılı olduğunda veya hatada bir hata HRESULT döndürürS_OK.
Örnek
CComCurrency cur(10, 1234);
cur.Round(3);
ATLASSERT(cur.GetFraction() == 1230);
CComCurrency::SetFraction
Bir CComCurrency nesnenin kesirli bileşenini ayarlamak için bu yöntemi çağırın.
HRESULT SetFraction(SHORT nFraction);
Parametreler
nFraction
Veri üyesinin kesirli bileşenine m_currency atanacak değer. Kesirli bileşenin işareti tamsayı bileşeniyle aynı olmalı ve değer -9999 () ile +9999 (CY_MIN_FRACTIONCY_MAX_FRACTION) aralığında olmalıdır.
Dönüş değeri
Başarılı olduğunda veya hatada bir hata HRESULT döndürürS_OK.
Örnek
CComCurrency cur(10, 0);
cur.SetFraction(5000);
ATLASSERT(CComCurrency(10, 5000) == cur);
CComCurrency::SetInteger
Bir CComCurrency nesnenin tamsayı bileşenini ayarlamak için bu yöntemi çağırın.
HRESULT SetInteger(LONGLONG nInteger);
Parametreler
nInteger
Veri üyesinin tamsayı bileşenine m_currency atanacak değer. Tamsayı bileşeninin işareti, mevcut kesirli bileşenin işaretiyle eşleşmelidir.
nInteger , (dahil) aralığında CY_MIN_INTEGER CY_MAX_INTEGERolmalıdır. Bu değerler atlcur.h dosyasında tanımlanır.
Dönüş değeri
Başarılı olduğunda veya hatada bir hata HRESULT döndürürS_OK.
Örnek
CComCurrency cur(0, 5000);
cur.SetInteger(10);
ATLASSERT(CComCurrency(10, 5000) == cur);