This commit is contained in:
Lenyiin 2024-09-04 20:08:52 +08:00
commit 8218957b02
34 changed files with 1184 additions and 0 deletions

179
Linux/Date.cc Normal file
View File

@ -0,0 +1,179 @@
#include "Date.hpp"
using namespace Lenyiin;
// 测试构造析构函数
void TestDate_1()
{
// 默认无参构造
Date d1;
// 默认有参构造
Date d2(2024, 9, 1);
// 拷贝构造
Date d3(d2);
// 测试输出功能
std::cout << "d1 为 " << d1 << std::endl;
std::cout << "d2 为 " << d2 << std::endl;
std::cout << "d3 为 " << d3 << std::endl;
// 赋值拷贝
d1 = d3;
std::cout << "d1 为" << d1 << std::endl;
// 测试闰年闰月
Date d4(2008, 2, 29);
std::cout << "d4 为" << d4 << std::endl;
// 测试日期有效性
Date d5(2007, 2, 29);
std::cout << "d5 为" << d5 << std::endl;
}
// 测试日期比较
void TestDate_2()
{
Date d1(2018, 3, 5);
Date d2(2019, 6, 20);
Date d3(d1);
// 测试 <
if (d1 < d2)
{
std::cout << d1 << " < " << d2 << std::endl;
}
if (d2 < d1)
{
std::cout << d2 << " < " << d1 << std::endl;
}
// 测试 == !=
if (d1 == d3)
{
std::cout << d1 << " == " << d3 << std::endl;
}
else
{
std::cout << d1 << " != " << d3 << std::endl;
}
if (d1 == d2)
{
std::cout << d1 << " == " << d2 << std::endl;
}
else
{
std::cout << d1 << " != " << d2 << std::endl;
}
// 测试 <=
if (d1 <= d2)
{
std::cout << d1 << " <= " << d2 << std::endl;
}
if (d2 <= d1)
{
std::cout << d2 << " <= " << d1 << std::endl;
}
// 测试 >
if (d1 > d2)
{
std::cout << d1 << " > " << d2 << std::endl;
}
if (d2 > d1)
{
std::cout << d2 << " > " << d1 << std::endl;
}
// 测试 >=
if (d1 >= d2)
{
std::cout << d1 << " >= " << d2 << std::endl;
}
if (d2 >= d1)
{
std::cout << d2 << " >= " << d1 << std::endl;
}
}
// 测试日期增减
void TestDate_3()
{
Date d1(2024, 9, 2);
// 测试打印函数
d1.Print();
// +
Date d2 = d1 + 100;
// +=
d1 += 100;
d1.Print();
d2.Print();
// -
d2 = d1 - 100;
// -=
d1 -= 100;
d1.Print();
d2.Print();
// += 负数
d2 = d1 + (-100);
d1 += -100;
d1.Print();
d2.Print();
// -= 负数
d2 = d1 - (-100);
d1 -= -100;
d1.Print();
d2.Print();
}
// 计算日期差
void TestDate_4()
{
Date d1(2024, 9, 2);
// 前置 ++ 后置 ++
Date d2 = ++d1;
Date d3 = d1++;
d1.Print();
d2.Print();
d3.Print();
// 前置 -- 后置 --
d2 = --d1;
d3 = d1--;
d1.Print();
d2.Print();
d3.Print();
// 日期差值
Date d4 = d1 + 100;
std::cout << d4 << " - " << d1 << " = " << d4 - d1 << std::endl;
// 日期修改
Date d5(2024, 9, 2);
std::cout << "修改前的 d5 为" << d5 << std::endl;
d5[0] = 2066, d5[1] = 6, d5[2] = 6;
std::cout << "修改后的 d5 为" << d5 << std::endl;
// 测试输入
Date d6;
std::cin >> d6;
std::cout << "d6 为" << d6 << std::endl;
}
int main()
{
// TestDate_1();
// TestDate_2();
// TestDate_3();
TestDate_4();
return 0;
}

301
Linux/Date.hpp Normal file
View File

@ -0,0 +1,301 @@
#pragma once
#include <iostream>
namespace Lenyiin
{
class Date
{
private:
friend std::ostream &operator<<(std::ostream &_cout, const Date &d);
friend std::istream &operator>>(std::istream &_cin, Date &d);
// 判断是否为闰年
bool isLeapYear(int year) const
{
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
// 获取任意月份的天数
int GetMonthDay(int year, int month)
{
static int monthArray[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int day = monthArray[month];
// 判断是否是闰年闰月
if (month == 2 && isLeapYear(year))
{
day = 29;
}
return day;
}
// 验证日期的有效性
bool isValidDate(int year, int month, int day)
{
// 月份必须在 1 到 12 之间
if (month < 1 || month > 12)
{
return false;
}
// 日期必须在 1 到 当月最大天数 之间
return day >= 1 && day <= GetMonthDay(year, month);
}
public:
// 构造函数
Date(int year = 2024, int month = 1, int day = 1)
{
if (!isValidDate(year, month, day))
{
std::cerr << "Invalid date!" << std::endl;
exit(1); // 终止程序, 日期无效
}
_year = year;
_month = month;
_day = day;
}
// 拷贝构造
Date(const Date &d)
: _year(d._year), _month(d._month), _day(d._day)
{
}
void Print()
{
std::cout << _year << "-" << _month << "-" << _day << std::endl;
}
// 赋值运算符重载
// 运算符重载,是为了让自定义类型可以像内置类型一样去使用运算符
// 自定义类型传参数和返回值时,在可以的情况下,尽量使用引用,减少拷贝的开销
// d1.operator==(d2);
bool operator==(const Date &d) const // bool operator==(Date* this, const Date& d) const
{
if (this->_year == d._year && this->_month == d._month && this->_day == d._day)
{
return true;
}
return false;
}
// d1.operator<(&d2);
bool operator<(const Date &d) const // bool operator<(Date* this, const Date& d) const
{
if (this->_year < d._year)
{
return true;
}
else if (this->_year == d._year && this->_month < d._month)
{
return true;
}
else if (this->_year == d._year && this->_month == d._month && this->_day < d._day)
{
return true;
}
return false;
}
// d1 <= d2
// d1.operator<=(&d2);
bool operator<=(const Date &d) const // bool operator<=(Date* this, const Date& d) const
{
return (*this < d) || (*this == d); // 代码复用
}
// d1.operator>(d2);
bool operator>(const Date &d) const // bool operator>(Date* this, const Date& d) const
{
return d < *this; // 代码复用
}
// d1 >= d2
// d1.operator>=(&d2);
bool operator>=(const Date &d) const // bool operator>=(Date* this, const Date& d) const
{
return !(*this < d); // 代码复用
}
// d1 != d2
// d1.operator!=(&d2);
bool operator!=(const Date &d) const // bool operator!=(Date* this, const Date& d) const
{
return !(*this == d); // 代码复用
}
// d1.operator=(d2);
Date &operator=(const Date &d) // Date& operator=(Date* this, const Date& d)
{
if (*this != d)
{
_year = d._year;
_month = d._month;
_day = d._day;
}
return *this;
}
// d1.operator+=(int);
Date &operator+=(int day) // Date& operator+=(Date* this, int day)
{
if (day < 0)
{
return *this -= -day;
}
_day += day;
while (_day > GetMonthDay(_year, _month))
{
// 如果日期不合法,就要往月进位
_day -= GetMonthDay(_year, _month);
_month++;
// 如果月不合法,就要往年进位
if (_month > 12)
{
_year++;
_month = 1;
}
}
return *this;
}
// d1.operator+(int);
Date operator+(int day) // Date operator+(Date* this, int day)
{
Date ret(*this); // Date ret(this->_year, this->_month, this->_day);
return ret += day;
}
// d1.operator-=(int);
Date &operator-=(int day) // Date& operator-=(Date* this, int day)
{
if (day < 0)
{
return *this += -day;
}
_day -= day;
while (_day < 1)
{
// 如果日期不合法, 就要往月退位, 月不合法就要往年退位
_month--;
if (_month == 0)
{
_year--;
_month = 12;
}
_day += GetMonthDay(_year, _month);
}
return *this;
}
// d1.operator-(int);
Date operator-(int day) // Date operator-(Date* this, int day)
{
Date ret(*this);
return ret -= day;
}
// d1.operator++(); // 前置++
Date &operator++() // Date& operator++(Date* this)
{
*this += 1;
return *this; // 返回加之后的结果
}
// d1.operator++(int); // 后置++
Date operator++(int) // Date operator++(Date* this, int)
{
Date ret(*this);
*this += 1;
return ret; // 返回加之前的结果
}
// d1.operator--(); // 前置--
Date &operator--() // Date& operator--(Date* this)
{
*this -= 1;
return *this;
}
// d1.operator--(int); // 后置--
Date operator--(int) // Date operator--(Date* this, int)
{
Date ret(*this);
*this -= 1;
return ret;
}
// d1.operator-(d2);
int operator-(const Date &d) // int operator-(Date* this, const Date& d)
{
Date max = *this;
Date min = d;
int flag = 1;
if (*this < d)
{
max = d;
min = *this;
flag = -1;
}
int count = 0;
while (min != max)
{
++min;
count++;
}
return count * flag;
}
// d1.operator[](int);
int &operator[](int index) // int& operator[](Date* this, int index)
{
if (index == 0)
{
return _year;
}
else if (index == 1)
{
return _month;
}
else if (index == 2)
{
return _day;
}
}
// 析构函数
~Date()
{
std::cout << "~Date()" << std::endl;
}
private:
int _year;
int _month;
int _day;
};
std::ostream &operator<<(std::ostream &_cout, const Date &d)
{
_cout << d._year << "-" << d._month << "-" << d._day;
return _cout;
}
std::istream &operator>>(std::istream &_cin, Date &d)
{
_cin >> d._year >> d._month >> d._day;
return _cin;
}
}

5
Linux/Makefile Normal file
View File

@ -0,0 +1,5 @@
date:Date.cc
g++ -o $@ $^
.PHONY:clean
clean:
rm -f date

BIN
Linux/date Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

179
Windows_Date/Date.cpp Normal file
View File

@ -0,0 +1,179 @@
#include "Date.hpp"
using namespace Lenyiin;
// 测试构造析构函数
void TestDate_1()
{
// 默认无参构造
Date d1;
// 默认有参构造
Date d2(2024, 9, 1);
// 拷贝构造
Date d3(d2);
// 测试输出功能
std::cout << "d1 为 " << d1 << std::endl;
std::cout << "d2 为 " << d2 << std::endl;
std::cout << "d3 为 " << d3 << std::endl;
// 赋值拷贝
d1 = d3;
std::cout << "d1 为" << d1 << std::endl;
// 测试闰年闰月
Date d4(2008, 2, 29);
std::cout << "d4 为" << d4 << std::endl;
// 测试日期有效性
Date d5(2007, 2, 29);
std::cout << "d5 为" << d5 << std::endl;
}
// 测试日期比较
void TestDate_2()
{
Date d1(2018, 3, 5);
Date d2(2019, 6, 20);
Date d3(d1);
// 测试 <
if (d1 < d2)
{
std::cout << d1 << " < " << d2 << std::endl;
}
if (d2 < d1)
{
std::cout << d2 << " < " << d1 << std::endl;
}
// 测试 == !=
if (d1 == d3)
{
std::cout << d1 << " == " << d3 << std::endl;
}
else
{
std::cout << d1 << " != " << d3 << std::endl;
}
if (d1 == d2)
{
std::cout << d1 << " == " << d2 << std::endl;
}
else
{
std::cout << d1 << " != " << d2 << std::endl;
}
// 测试 <=
if (d1 <= d2)
{
std::cout << d1 << " <= " << d2 << std::endl;
}
if (d2 <= d1)
{
std::cout << d2 << " <= " << d1 << std::endl;
}
// 测试 >
if (d1 > d2)
{
std::cout << d1 << " > " << d2 << std::endl;
}
if (d2 > d1)
{
std::cout << d2 << " > " << d1 << std::endl;
}
//测试 >=
if (d1 >= d2)
{
std::cout << d1 << " >= " << d2 << std::endl;
}
if (d2 >= d1)
{
std::cout << d2 << " >= " << d1 << std::endl;
}
}
// 测试日期增减
void TestDate_3()
{
Date d1(2024, 9, 2);
// 测试打印函数
d1.Print();
// +
Date d2 = d1 + 100;
// +=
d1 += 100;
d1.Print();
d2.Print();
// -
d2 = d1 - 100;
// -=
d1 -= 100;
d1.Print();
d2.Print();
// += 负数
d2 = d1 + (-100);
d1 += -100;
d1.Print();
d2.Print();
// -= 负数
d2 = d1 - (-100);
d1 -= -100;
d1.Print();
d2.Print();
}
// 计算日期差
void TestDate_4()
{
Date d1(2024, 9, 2);
// 前置 ++ 后置 ++
Date d2 = ++d1;
Date d3 = d1++;
d1.Print();
d2.Print();
d3.Print();
// 前置 -- 后置 --
d2 = --d1;
d3 = d1--;
d1.Print();
d2.Print();
d3.Print();
// 日期差值
Date d4 = d1 + 100;
std::cout << d4 << " - " << d1 << " = " << d4 - d1 << std::endl;
// 日期修改
Date d5(2024, 9, 2);
std::cout << "修改前的 d5 为" << d5 << std::endl;
d5[0] = 2066, d5[1] = 6, d5[2] = 6;
std::cout << "修改后的 d5 为" << d5 << std::endl;
// 测试输入
Date d6;
std::cin >> d6;
std::cout << "d6 为" << d6 << std::endl;
}
int main()
{
//TestDate_1();
//TestDate_2();
//TestDate_3();
TestDate_4();
return 0;
}

302
Windows_Date/Date.hpp Normal file
View File

@ -0,0 +1,302 @@
#pragma once
#include <iostream>
namespace Lenyiin
{
class Date
{
private:
friend std::ostream& operator<<(std::ostream& _cout, const Date& d);
friend std::istream& operator>>(std::istream& _cin, Date& d);
// 判断是否为闰年
bool isLeapYear(int year) const
{
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
// 获取任意月份的天数
int GetMonthDay(int year, int month)
{
static int monthArray[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int day = monthArray[month];
// 判断是否是闰年闰月
if (month == 2 && isLeapYear(year))
{
day = 29;
}
return day;
}
// 验证日期的有效性
bool isValidDate(int year, int month, int day)
{
// 月份必须在 1 到 12 之间
if (month < 1 || month > 12)
{
return false;
}
// 日期必须在 1 到 当月最大天数 之间
return day >= 1 && day <= GetMonthDay(year, month);
}
public:
// 构造函数
Date(int year = 2024, int month = 1, int day = 1)
{
if (!isValidDate(year, month, day))
{
std::cerr << "Invalid date!" << std::endl;
exit(1); // 终止程序, 日期无效
}
_year = year;
_month = month;
_day = day;
}
// 拷贝构造
Date(const Date& d)
: _year(d._year), _month(d._month), _day(d._day)
{
}
void Print()
{
std::cout << _year << "-" << _month << "-" << _day << std::endl;
}
// 赋值运算符重载
// 运算符重载,是为了让自定义类型可以像内置类型一样去使用运算符
// 自定义类型传参数和返回值时,在可以的情况下,尽量使用引用,减少拷贝的开销
// d1.operator==(d2);
bool operator==(const Date& d) const // bool operator==(Date* this, const Date& d) const
{
if (this->_year == d._year && this->_month == d._month && this->_day == d._day)
{
return true;
}
return false;
}
// d1.operator<(&d2);
bool operator<(const Date& d) const // bool operator<(Date* this, const Date& d) const
{
if (this->_year < d._year)
{
return true;
}
else if (this->_year == d._year && this->_month < d._month)
{
return true;
}
else if (this->_year == d._year && this->_month == d._month && this->_day < d._day)
{
return true;
}
return false;
}
// d1 <= d2
// d1.operator<=(&d2);
bool operator<=(const Date& d) const // bool operator<=(Date* this, const Date& d) const
{
return (*this < d) || (*this == d); // 代码复用
}
// d1.operator>(d2);
bool operator>(const Date& d) const // bool operator>(Date* this, const Date& d) const
{
return d < *this; // 代码复用
}
// d1 >= d2
// d1.operator>=(&d2);
bool operator>=(const Date& d) const // bool operator>=(Date* this, const Date& d) const
{
return !(*this < d); // 代码复用
}
// d1 != d2
// d1.operator!=(&d2);
bool operator!=(const Date& d) const // bool operator!=(Date* this, const Date& d) const
{
return !(*this == d); // 代码复用
}
// d1.operator=(d2);
Date& operator=(const Date& d) // Date& operator=(Date* this, const Date& d)
{
if (*this != d)
{
_year = d._year;
_month = d._month;
_day = d._day;
}
return *this;
}
// d1.operator+=(int);
Date& operator+=(int day) // Date& operator+=(Date* this, int day)
{
if (day < 0)
{
return *this -= -day;
}
_day += day;
while (_day > GetMonthDay(_year, _month))
{
// 如果日期不合法,就要往月进位
_day -= GetMonthDay(_year, _month);
_month++;
// 如果月不合法,就要往年进位
if (_month > 12)
{
_year++;
_month = 1;
}
}
return *this;
}
// d1.operator+(int);
Date operator+(int day) // Date operator+(Date* this, int day)
{
Date ret(*this); // Date ret(this->_year, this->_month, this->_day);
return ret += day;
}
// d1.operator-=(int);
Date& operator-=(int day) // Date& operator-=(Date* this, int day)
{
if (day < 0)
{
return *this += -day;
}
_day -= day;
while (_day < 1)
{
// 如果日期不合法, 就要往月退位, 月不合法就要往年退位
_month--;
if (_month == 0)
{
_year--;
_month = 12;
}
_day += GetMonthDay(_year, _month);
}
return *this;
}
// d1.operator-(int);
Date operator-(int day) // Date operator-(Date* this, int day)
{
Date ret(*this);
return ret -= day;
}
// d1.operator++(); // 前置++
Date& operator++() // Date& operator++(Date* this)
{
*this += 1;
return *this; // 返回加之后的结果
}
// d1.operator++(int); // 后置++
Date operator++(int) // Date operator++(Date* this, int)
{
Date ret(*this);
*this += 1;
return ret; // 返回加之前的结果
}
// d1.operator--(); // 前置--
Date& operator--() // Date& operator--(Date* this)
{
*this -= 1;
return *this;
}
// d1.operator--(int); // 后置--
Date operator--(int) // Date operator--(Date* this, int)
{
Date ret(*this);
*this -= 1;
return ret;
}
// d1.operator-(d2);
int operator-(const Date& d) // int operator-(Date* this, const Date& d)
{
Date max = *this;
Date min = d;
int flag = 1;
if (*this < d)
{
max = d;
min = *this;
flag = -1;
}
int count = 0;
while (min != max)
{
++min;
count++;
}
return count * flag;
}
// d1.operator[](int);
int& operator[](int index) // int& operator[](Date* this, int index)
{
if (index == 0)
{
return _year;
}
else if (index == 1)
{
return _month;
}
else if (index == 2)
{
return _day;
}
}
// 析构函数
~Date()
{
std::cout << "~Date()" << std::endl;
}
private:
int _year;
int _month;
int _day;
};
std::ostream& operator<<(std::ostream& _cout, const Date& d)
{
_cout << d._year << "-" << d._month << "-" << d._day;
return _cout;
}
std::istream& operator>>(std::istream& _cin, Date& d)
{
_cin >> d._year >> d._month >> d._day;
return _cin;
}
}

View File

@ -0,0 +1,31 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.7.34221.43
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Windows_Date", "Windows_Date.vcxproj", "{E23EDFCA-3BC8-4847-9E19-7321D4E46286}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Debug|x64.ActiveCfg = Debug|x64
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Debug|x64.Build.0 = Debug|x64
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Debug|x86.ActiveCfg = Debug|Win32
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Debug|x86.Build.0 = Debug|Win32
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Release|x64.ActiveCfg = Release|x64
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Release|x64.Build.0 = Release|x64
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Release|x86.ActiveCfg = Release|Win32
{E23EDFCA-3BC8-4847-9E19-7321D4E46286}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {CB230911-DB6C-4E35-ABA2-5F9A64C579A4}
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,138 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{e23edfca-3bc8-4847-9e19-7321d4e46286}</ProjectGuid>
<RootNamespace>WindowsDate</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="Date.hpp" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="Date.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="源文件">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="头文件">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
</Filter>
<Filter Include="资源文件">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="Date.hpp">
<Filter>头文件</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Date.cpp">
<Filter>源文件</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<ProjectOutputs>
<ProjectOutput>
<FullPath>E:\Git 仓库\公开仓库\1_Date\Windows_Date\x64\Debug\Windows_Date.exe</FullPath>
</ProjectOutput>
</ProjectOutputs>
<ContentFiles />
<SatelliteDlls />
<NonRecipeFileRefs />
</Project>

Binary file not shown.

View File

@ -0,0 +1,3 @@
 Date.cpp
E:\Git 仓库\公开仓库\1_Date\Windows_Date\Date.hpp(277): warning C4715: “Lenyiin::Date::operator[]”: 不是所有的控件路径都返回值
Windows_Date.vcxproj -> E:\Git 仓库\公开仓库\1_Date\Windows_Date\x64\Debug\Windows_Date.exe

Binary file not shown.

View File

@ -0,0 +1 @@
E:\Git 仓库\公开仓库\1_Date\Windows_Date\Date.cpp;E:\Git 仓库\公开仓库\1_Date\Windows_Date\x64\Debug\Date.obj

View File

@ -0,0 +1,2 @@
PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.37.32822:TargetPlatformVersion=10.0.22000.0:
Debug|x64|E:\Git 仓库\公开仓库\1_Date\Windows_Date\|

View File

@ -0,0 +1 @@
E:\Git 仓库\公开仓库\1_Date\Windows_Date\x64\Debug\Windows_Date.exe

Binary file not shown.

Binary file not shown.