aboutsummaryrefslogtreecommitdiff
path: root/Homework8
diff options
context:
space:
mode:
Diffstat (limited to 'Homework8')
-rw-r--r--Homework8/Homework8.sln41
-rw-r--r--Homework8/Homework8/Homework8.vcxproj138
-rw-r--r--Homework8/Homework8/Homework8.vcxproj.filters22
-rw-r--r--Homework8/Homework8/main.cpp24
-rw-r--r--Homework8/MyStructures/Contact.hpp108
-rw-r--r--Homework8/MyStructures/ContactList.hpp119
-rw-r--r--Homework8/MyStructures/MyStructures.vcxproj136
-rw-r--r--Homework8/MyStructures/MyStructures.vcxproj.filters7
8 files changed, 595 insertions, 0 deletions
diff --git a/Homework8/Homework8.sln b/Homework8/Homework8.sln
new file mode 100644
index 0000000..a8ed990
--- /dev/null
+++ b/Homework8/Homework8.sln
@@ -0,0 +1,41 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.8.34330.188
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Homework8", "Homework8\Homework8.vcxproj", "{F8F29D9D-81A6-4530-AFE2-E71934846A6D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MyStructures", "MyStructures\MyStructures.vcxproj", "{BF896E58-AEC3-431B-9FE4-6F7061977AA2}"
+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
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Debug|x64.ActiveCfg = Debug|x64
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Debug|x64.Build.0 = Debug|x64
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Debug|x86.ActiveCfg = Debug|Win32
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Debug|x86.Build.0 = Debug|Win32
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Release|x64.ActiveCfg = Release|x64
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Release|x64.Build.0 = Release|x64
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Release|x86.ActiveCfg = Release|Win32
+ {F8F29D9D-81A6-4530-AFE2-E71934846A6D}.Release|x86.Build.0 = Release|Win32
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Debug|x64.ActiveCfg = Debug|x64
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Debug|x64.Build.0 = Debug|x64
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Debug|x86.ActiveCfg = Debug|Win32
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Debug|x86.Build.0 = Debug|Win32
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Release|x64.ActiveCfg = Release|x64
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Release|x64.Build.0 = Release|x64
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Release|x86.ActiveCfg = Release|Win32
+ {BF896E58-AEC3-431B-9FE4-6F7061977AA2}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {72DD9867-97FA-44EA-B829-06173F09D886}
+ EndGlobalSection
+EndGlobal
diff --git a/Homework8/Homework8/Homework8.vcxproj b/Homework8/Homework8/Homework8.vcxproj
new file mode 100644
index 0000000..0ad5b45
--- /dev/null
+++ b/Homework8/Homework8/Homework8.vcxproj
@@ -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>{f8f29d9d-81a6-4530-afe2-e71934846a6d}</ProjectGuid>
+ <RootNamespace>Homework8</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" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <IncludePath>C:\Users\rpwar\source\repos\OIT-WI-2024\Homework8\homework-8-reecepwarner\Homework8\MyStructures;$(IncludePath)</IncludePath>
+ </PropertyGroup>
+ <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>
+ <ClCompile Include="main.cpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/Homework8/Homework8/Homework8.vcxproj.filters b/Homework8/Homework8/Homework8.vcxproj.filters
new file mode 100644
index 0000000..ce0c35c
--- /dev/null
+++ b/Homework8/Homework8/Homework8.vcxproj.filters
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <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="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <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>
+ <ClCompile Include="main.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/Homework8/Homework8/main.cpp b/Homework8/Homework8/main.cpp
new file mode 100644
index 0000000..37aad74
--- /dev/null
+++ b/Homework8/Homework8/main.cpp
@@ -0,0 +1,24 @@
+//Name:Reece Waner
+
+#include "Contact.hpp"
+
+using namespace MyStructures; //bringing scope into the main
+
+
+int main()
+{
+
+ Contact<char> newContact;
+
+
+
+
+
+
+
+
+
+
+
+ return 0;
+} \ No newline at end of file
diff --git a/Homework8/MyStructures/Contact.hpp b/Homework8/MyStructures/Contact.hpp
new file mode 100644
index 0000000..f7fda6c
--- /dev/null
+++ b/Homework8/MyStructures/Contact.hpp
@@ -0,0 +1,108 @@
+#ifndef CONTACT_HPP
+#define CONTACT_HPP
+
+namespace MyStructures //variables declared here act as a global variable
+{
+ template <typename T>
+ class Contact
+ {
+ public:
+ Contact() = default;
+ Contact(const char* name, const short age);
+
+ ~Contact() = default;
+
+ Contact(const Contact& copy); //copy constructor
+ Contact& operator=(const Contact& rhs); //copy assignment
+
+ Contact(Contact&& move); //move constructor
+ Contact& operator=(Contact&& rhs); //move assignment
+
+
+ short GetAge();
+ const char* GetName();
+
+ void SetAge(short age);
+ void SetName(const char* name);
+
+ void Print();
+
+ T GetCustomValue(T& newValue);
+
+ private:
+ const char* name_{};
+ short age_{ 0 };
+ T custom_value_{}; //one type is declared, it will be custom
+
+
+ };
+
+
+ template<typename T>
+ Contact<T>::Contact(const char* name, const short age)
+ {
+ }
+
+ template<typename T>
+ Contact<T>::Contact(const Contact& copy)
+ {
+ }
+
+ template<typename T>
+ Contact<T>& Contact<T>::operator=(const Contact& rhs)
+ {
+ // TODO: insert return statement here
+ }
+
+ template<typename T>
+ Contact<T>::Contact(Contact&& move)
+ {
+ }
+
+ template<typename T>
+ Contact<T>& Contact<T>::operator=(Contact&& rhs)
+ {
+ // TODO: insert return statement here
+ }
+
+
+
+ template<typename T>
+ short Contact<T>::GetAge()
+ {
+ return 0;
+ }
+
+ template<typename T>
+ const char* Contact<T>::GetName()
+ {
+ return nullptr;
+ }
+
+ template<typename T>
+ void Contact<T>::SetAge(short age)
+ {
+ }
+
+ template<typename T>
+ void Contact<T>::SetName(const char* name)
+ {
+ }
+
+ template<typename T>
+ inline void Contact<T>::Print()
+ {
+ }
+
+ template<typename T>
+ T Contact<T>::GetCustomValue(T& newValue)
+ {
+ custom_value_ = newValue
+ return T();
+ }
+
+}
+
+
+
+#endif \ No newline at end of file
diff --git a/Homework8/MyStructures/ContactList.hpp b/Homework8/MyStructures/ContactList.hpp
new file mode 100644
index 0000000..dd0f4ee
--- /dev/null
+++ b/Homework8/MyStructures/ContactList.hpp
@@ -0,0 +1,119 @@
+#ifndef CONTACT_LIST_HPP
+#define CONTACT_LIST_HPP
+
+namespace MyStructures
+{
+ template<class C>
+ class ContactList
+ {
+ public:
+ ContactList() = default;
+ ContactList(size_t size); //Creates contact list of this size
+ ContactList(const C* contacts, const size_t& length); //Makes a copy of another contact list
+ ~ContactList();
+
+ ContactList(const ContactList& copy); //deep copy constructor
+ ContactList& operator=(const ContactList& rhs); //deep copy assignment
+
+ ContactList(ContactList&& move); //reference(move) constructor
+ ContactList& operator=(ContactList&& rhs); //reference(move) assignment
+
+ private:
+ C* contacts_{ nullptr };
+ size_t length_{ 0 }; //entire length of array
+ size_t size_{ 0 }; //number of actual elements
+
+ C* AllocateContactList(const size_t& length);
+ };
+ template<class C>
+ ContactList<C>::ContactList(size_t size)
+ {
+ contacts_ = AllocateContactList(size);
+ }
+ template<class C>
+ ContactList<C>::ContactList(const C* contacts, const size_t& length)
+ {
+ contacts_ AllocateContactList(length);
+ for (auto i = 0u; i < length; ++i)
+ {
+ contacts_[i] = contacts[i];
+ }
+ }
+ template<class C>
+ ContactList<C>::~ContactList()
+ {
+ delete[] contacts_;
+ contacts_ = nullptr;
+ }
+ template<class C>
+ ContactList<C>::ContactList(const ContactList& copy)
+ {
+ length_ = copy.length_;
+ size_ = copy.size_;
+ contacts_ = AllocateContactList(copy.length_);
+
+ contacts_ AllocateContactList(length);
+ for (auto i = 0u; i < length_; ++i)
+ {
+ contacts_[i] = copy[i];
+ }
+
+ }
+ template<class C>
+ ContactList<C>&ContactList<C>::operator=(const ContactList& rhs)
+ {
+ if (this != &rhs) //asking if they're the same object
+ {
+ delete[] contacts_;
+ contacts_ = nullptr;
+
+ contacts_ = AllocateContactList(rhs.length_);
+ size_ = rhs.size_;
+ contacts_ AllocateContactList(length);
+
+ for (auto i = 0u; i < length_; ++i)
+ {
+ contacts_[i] = rhs[i];
+ }
+ }
+ return *this;
+ }
+ template<class C>
+ ContactList<C>::ContactList(ContactList&& move)
+ {
+ *this = std::move(move); //move shifts addresses
+ }
+ template<class C>
+ ContactList<C>& ContactList<C>::operator=(ContactList&& rhs)
+ {
+ if(this != &rhs)
+ {
+ delete[] contacts_;
+ contacts = nullptr;
+
+ contacts_ = rhs.contacts_;
+
+ length_ = rhs.length_;
+ size_ = rhs.size_;
+
+ rhs.contacts_ = nullptr; //Invalidate the other object
+ }
+ template<class C>
+ C* ContactList<C>::AllocateContactList(const size_t& length)
+ {
+ C* storage = nullptr
+ length_ - length;
+
+ storage = newC[length]{};
+
+ return storage;
+ }
+};
+}
+
+
+
+
+
+
+#endif \ No newline at end of file
diff --git a/Homework8/MyStructures/MyStructures.vcxproj b/Homework8/MyStructures/MyStructures.vcxproj
new file mode 100644
index 0000000..92eff89
--- /dev/null
+++ b/Homework8/MyStructures/MyStructures.vcxproj
@@ -0,0 +1,136 @@
+<?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>{bf896e58-aec3-431b-9fe4-6f7061977aa2}</ProjectGuid>
+ <RootNamespace>MyStructures</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="Contact.hpp" />
+ <ClInclude Include="ContactList.hpp" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/Homework8/MyStructures/MyStructures.vcxproj.filters b/Homework8/MyStructures/MyStructures.vcxproj.filters
new file mode 100644
index 0000000..deeda6d
--- /dev/null
+++ b/Homework8/MyStructures/MyStructures.vcxproj.filters
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <ClInclude Include="Contact.hpp" />
+ <ClInclude Include="ContactList.hpp" />
+ </ItemGroup>
+</Project> \ No newline at end of file