Skip to content

Commit

Permalink
CodeyZ-sec-pr
Browse files Browse the repository at this point in the history
  • Loading branch information
CodeyZ authored and Mq-b committed Apr 25, 2024
1 parent ecd1dcd commit 455b14a
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions src/群友提交/第04题/CodeyZ.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#include<iostream>
class ComponentBase {
protected:
static inline std::size_t component_type_count = 0;
};
template<typename T>
class Component : public ComponentBase {

public:
static std::size_t component_type_id() {
static std::size_t id = component_type_count++;
return id;
}

};
class A : public Component<A>
{};
class B : public Component<B>
{};
class C : public Component<C>
{};
int main()
{
std::cout << A::component_type_id() << std::endl;
std::cout << B::component_type_id() << std::endl;
std::cout << B::component_type_id() << std::endl;
std::cout << A::component_type_id() << std::endl;
std::cout << A::component_type_id() << std::endl;
std::cout << C::component_type_id() << std::endl;

}

0 comments on commit 455b14a

Please sign in to comment.