sincerely Singaporean

If you have not done so, read this full tutorial on how to use SGEXTN to build an application.

SGLTuple5

see header file

(no source file, everything inside header)

template ‹typename T1, typename T2, typename T3, typename T4, typename T5› class SGLTuple5;

part of SGEXTN module SG_Containers

temporary struct for 5 pieces of data

detailed description

list of all including inherited members

implementation details

preprocessor file inclusion directive: #include ‹SGLTuple5.h›

CMake target for BuildLah: SGEXTN::SG_Containers

see this link for more information about BuildLah

parent class: (none)

children classes: (none)

instance member variables

T5 fifth;

T1 first;

T4 fourth;

T2 second;

T3 third;

instance member functions

SGLTuple5(T1 first, T2 second, T3 third, T4 fourth, T5 fifth);

[[nodiscard]] int hash() const;

[[nodiscard]] bool operator!=(const SGLTuple5& x) const;

[[nodiscard]] bool operator‹(const SGLTuple5& x) const;

[[nodiscard]] bool operator==(const SGLTuple5& x) const;

[[nodiscard]] bool operator›(const SGLTuple5& x) const;

Detailed Description

SGLTuple5 provides a template based temporary struct to store any 5 pieces of data. Common operators are also defined but are ignored if the component structs do not define the operator. This is a template based class with no separate source file. This class is a SGEXTN container. Copy constructor, copy assignment, move constructor, move assignment, and destructor work as expected. A deep copy is performed whenever this class is copied, and the new instance will not be linked to the old instance in any way. It is assumed that the contents placed into this SGEXTN container can be copied and moved. This means that their copy constructor copy assignment, move constructor, move assignment, and destructor work as expected. If this is not the case or if you want the container to store references or constant references, store pointers instead.

Implementation Details

a class with 5 member variables, 1 per component

T5 fifth;

Fifth component.

T1 first;

First component.

T4 fourth;

Fourth component.

T2 second;

Second component.

T3 third;

Third component.

SGLTuple5(T1 first, T2 second, T3 third, T4 fourth, T5 fifth);

Creates a SGLTuple5 with first component first, second component second, third component third, fourth component fourth, fifth component fifth.

[[nodiscard]] int hash() const;

Returns the hash value of this tuple, used by SGLHash.

This is ignored if any component is a custom struct without hash() defined or if it is a function pointer.

[[nodiscard]] bool operator!=(const SGLTuple5& x) const;

Returns if this tuple is not equal to x.

This is ignored if any component does not have operator!= defined.

[[nodiscard]] bool operator‹(const SGLTuple5& x) const;

Returns if this tuple is less than x, components in front have their comparators taking priority.

This is ignored if any component does not have operator‹ or operator› defined.

[[nodiscard]] bool operator==(const SGLTuple5& x) const;

Returns if this tuple is equal to x.

This is ignored if any component does not have operator== defined.

[[nodiscard]] bool operator›(const SGLTuple5& x) const;

Returns if this tuple is more than x, components in front have their comparators taking priority.

This is ignored if any component does not have operator‹ or operator› defined.

©2025 05524F.sg (Singapore)

contact 05524F / report a bug / make a suggestion

about 05524F SINGAPORE values

list of 05524F projects