Ну, это не единственное место, где используется Temp
, потому что вы должны создать объект Temp
при вызове конструктора, верно?
Что касается «захвата имен», вы можете использовать вложенный класс:
class Final
{
public:
struct ConstructorParameter { char a, b; };
Final(const ConstructorParameter& in) { ... };
};
Или, конечно, вы можете просто создать конструктор с двумя параметрами:
class Final
{
public:
Final(char a, char b) { ... };
};