Main Table of Contents


Table of Contents

class PtDate
PtDate: class summary
PtDate::PtDate()
PtDate::~PtDate()
PtDate::Day()
PtDate::DayOfTheDate()
PtDate::IsDate()
PtDate::IsLastDayOfTheMonth()
PtDate::Month()
PtDate::PrintDayOfTheDate()
PtDate::Today()
PtDate::Year()
PtDate::operator + ()
PtDate::operator - ()
PtDate::operator ++ ()
PtDate::operator -- ()
PtDate::operator += ()
PtDate::operator -= ()
PtDate::operator = ()
PtDate::operator < ()
PtDate::operator > ()
PtDate::operator == ()
PtDate::operator != ()
PtDate::operator long()
enum PtDaysOfTheWeek

class PtDate


Intro
PtDate: class summary
PtDate::PtDate()
PtDate::~PtDate()
PtDate::Day()
PtDate::DayOfTheDate()
PtDate::IsDate()
PtDate::IsLastDayOfTheMonth()
PtDate::Month()
PtDate::PrintDayOfTheDate()
PtDate::Today()
PtDate::Year()
PtDate::operator + ()
PtDate::operator - ()
PtDate::operator ++ ()
PtDate::operator -- ()
PtDate::operator += ()
PtDate::operator -= ()
PtDate::operator = ()
PtDate::operator < ()
PtDate::operator > ()
PtDate::operator == ()
PtDate::operator != ()
PtDate::operator long()
enum PtDaysOfTheWeek

PtDate is a class which is used to represent dates. This class is registered in the type manager.

It is not generally safe to derive your class from a class which is registered in the type manager. You may create a date class which contains a PtDate, but you may not derive a class from PtDate.


PtDate: class summary


Intro

Files to include Class declaration Base class
poet.hxx ptcomp.hxx none

Enums:

PtDaysOfTheWeek enum PtDaysOfTheWeek{Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

Member functions:

constructor PtDate();
destructor ~PtDate();
Day char& Day();
DayOfTheDate PtDaysOfTheWeek DayOfTheDate();
IsDate int IsDate();
IsLastDayOfTheMonth int IsLastDayOfTheMonth();
Month char& Month();
PrintDayOfTheDate PtString PrintDayOfTheDate();
Today PtDate& Today();
Year short& Year();
operator + PtDate operator + (long days);
operator - PtDate operator - (long days);
operator ++ PtDate& operator ++ ();
operator - - PtDate& operator -- ();
operator += PtDate& operator += (long days);
operator -= PtDate& operator -= (long days);
operator = PtDate& operator = (PtDate& );
operator < int operator < (PtDate& );
operator > int operator > (PtDate& );
operator == int operator == (PtDate& );
operator != int operator != (PtDate& );
operator long operator long();

PtDate::PtDate()


Intro

Declarations:

PtDate::PtDate()
PtDate:: PtDate(short year, char month, char day)
PtDate:: PtDate(long StartDate)
PtDate:: PtDate(PtDate& ThatDate)

Each of these declarations is discussed separately below.

Declaration:

PtDate::PtDate()

Description:

Constructor. Sets day, month, and year to the current date.

Declaration:

PtDate:: PtDate(short year, char month, char day)

Description:

Constructor. Sets day, month, and year to the values from the parameter list.

Declaration:

PtDate:: PtDate(long StartDate)

Description:

Constructor. StartDate is treated as the number of days since January 1, 4713 B.C. PtDate uses Julian dates internally..

Declaration:

PtDate:: PtDate(PtDate& ThatDate)

Description:

Copy constructor. Sets the value of this date to ThatDate.


PtDate::~PtDate()


Intro

Declaration:

PtDate::~PtDate()

Description:

Destructor. It is not virtual since you are not supposed to derive other classes from PtDate or other type manager types.


PtDate::Day()


Intro

Declaration:

char& PtDate::Day()

Description:

Accesses the day for the date. May be used to get or set the day.

Example:

PtDate date;
date.Day() = 10;
cout << (int) date.Day(); // Must cast!

Note:

The above cast is necessary to make cout print the day as an integer. PtDate:: Day() returns a character.


PtDate::DayOfTheDate()


Intro

Declaration:

PtDaysOfTheWeek PtDate::DayOfTheDate()

Description:

Returns the day of the week for the date contained in this PtDate object.

Example:

PtDate date (1991, (char) 12, (char) 12);
PtDaysOfTheWeek Day;
Day = date.DayOfTheDate();

PtDate::IsDate()


Intro

Declaration:

int PtDate::IsDate()

Description:

Returns a non-zero value if the date is valid; returns zero if the date is invalid.


PtDate::IsLastDayOfTheMonth()


Intro

Declaration:

int PtDate::IsLastDayOfTheMonth()

Description:

Return a non-zero value if the date is the last day of the month.


PtDate::Month()


Intro

Declaration:

char& PtDate::Month()

Description:

Access the month of the date. May be used to get or set the month.

Example:

PtDate date;
date.Month() = 10;
cout << (int) date.Month();

Note:

The above cast is necessary to make cout print the month as an integer. PtDate:: Month() returns a character.


PtDate::PrintDayOfTheDate()


Intro

Declaration:

PtString PtDate::PrintDayOfTheDate()

Description:

Returns the name of the current weekday as a PtString.


PtDate::Today()


Intro

Declaration:

PtDate& PtDate::Today()

Description:

Returns the current date.


PtDate::Year()


Intro

Declaration:

short& PtDate::Year()

Description:

Access the year of the date. May be used to get or set the year.

Example:

PtDate date;
date.Year() = 1991;
cout << date.Year();

PtDate::operator + ()


Intro

Declaration:

PtDate PtDate ::operator + (long days)

Description:

Adds days to the date.

Example:

PtDate result;
PtDate date (1990, (char) 9, (char) 9);
result = date + 5; // Add 5 days

PtDate::operator - ()


Intro

Declaration:

PtDate PtDate::operator - (long days) long PtDate::operator - (PtDate& ThatDate)

Description:

Subtraction operator. The first form subtracts days from a date to return another date. The second form returns the number of days between two dates.

Example:

PtDate dateA (1991, (char) 9, (char) 9);
PtDate dateB (1991, (char) 10, (char) 9);
long days;
days = dateB - dateA; // uses long PtDate::operator -(PtDate&)
dateB = dateA - 10; // uses PtDate PtDate::operator -(long days)

PtDate::operator ++ ()


Intro

Declaration:

PtDate& PtDate::operator ++ ()

Description:

Increments the date by one day.

Example:

PtDate date (1991, (char) 12, (char) 24);
++date;

PtDate::operator -- ()


Intro

Declaration:

PtDate& PtDate::operator -- ()

Description:

Decrements the date by one day.

Example:

PtDate date (1991, (char) 12, (char) 26);
--date;

PtDate::operator += ()


Intro

Declaration:

PtDate& PtDate::operator += (long days)

Description:

Adds some number of days to the date.

Example:

PtDate date (1991, (char) 12, (char) 26);
date += 7;

PtDate::operator -= ()


Intro

Declaration:

PtDate& PtDate::operator -= (long days)

Description:

Subtracts some number of days from the date.

Example:

PtDate date (1991, (char) 12, (char) 26);
date -= 7;

PtDate::operator = ()


Intro

Declaration:

PtDate& PtDate::operator = (const PtDate& )

Description:

Assignment operator. Assigns one date to another.

Example:

PtDate date (1991, (char) 12, (char) 26);
PtDate result;
result = date;

PtDate::operator < ()


Intro

Declaration:

int PtDate::operator < (PtDate& )

Description:

Comparison operator. Returns a non-zero value if date A is less than date B.

Example:

PtDate dateA;
PtDate dateB;
// Compare
if (dateA < dateB)
{
cout << "dateA is less." << endl;
}

PtDate::operator > ()


Intro

Declaration:

int PtDate::operator > (PtDate& )

Description:

Comparison operator. Returns a non-zero value if date A is greater than date B.

Example:

PtDate dateA;
PtDate dateB;
if (dateA > dateB)
{
cout << "dateA is greater." << endl;
}

PtDate::operator == ()


Intro

Declaration:

int PtDate::operator == (PtDate& )

Description:

Comparison operator. Returns a non-zero value if date A is equal to date B.

Example:

PtDate dateA;
PtDate dateB;
if (dateA == dateB)
{
cout << "Well, Margaret, they look the same to me." << endl;
}

PtDate::operator != ()


Intro

Declaration:

int PtDate::operator != (PtDate& )

Description:

Comparison operator. Returns a non-zero value if date A is not equal to date B.

Returns:

-1 if a > b
1 if a < b
0 if a == b

Example:

PtDate HireDay;
PtDate FixedDay;
switch ( HireDay != FixedDay )
{
case -1 :
case 0 :
cout << "Hired before fixed day";
break;
case 1 :
cout << "Hired later":
break;
}

PtDate::operator long()


Intro

Declaration:

PtDate::operator long()

Description:

Converts the date to a long.

Returns:

The number of days since January 1, 4713 B.C.


enum PtDaysOfTheWeek


Intro

This enum is used to represent the day of the week.

enum PtDaysOfTheWeek {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};

Copyright (c) 1996 POET Software, Inc. All rights reserved. Reproduction in whole or in part in any form or medium without the express permission of POET Software, Inc. is prohibited.