ProjGeom 1.0.11
Loading...
Searching...
No Matches
greeter.h
Go to the documentation of this file.
1
5#pragma once
6
7#include <string>
8
9namespace projgeom {
10
14 enum class LanguageCode { EN, DE, ES, FR };
15
19 class Greeter {
20 public:
26 explicit Greeter(std::string name) : name_(std::move(name)) {}
27
34 std::string greet(LanguageCode lang) const {
35 switch (lang) {
37 return "Hallo " + name_ + "!";
39 return "¡Hola " + name_ + "!";
41 return "Bonjour " + name_ + "!";
42 default:
43 return "Hello " + name_ + "!";
44 }
45 }
46
47 private:
49 std::string name_;
50 };
51
52} // namespace projgeom
A class that provides localized greeting messages.
Definition greeter.h:19
std::string greet(LanguageCode lang) const
Generate a greeting message in the specified language.
Definition greeter.h:34
Greeter(std::string name)
Construct a new Greeter object.
Definition greeter.h:26
Definition greeter.h:9
LanguageCode
Supported language codes for greetings.
Definition greeter.h:14