// Example for use of GNU gettext.
// This file is in the public domain.
// Source code of the C++ program.
// Avoid deprecation warnings from g++ 3.1 or newer.
#if defined __GNUG__ && defined __DEPRECATED
# include <iostream>
using namespace std;
#else
# include <iostream.h>
#endif
// Get setlocale() declaration.
#include <locale.h>
// Get getpid() declaration.
#if defined _WIN32 && !defined __CYGWIN__
/* native Windows API */
# include <process.h>
# define getpid _getpid
#else
/* POSIX API */
# include <unistd.h>
#endif
// Get gettext(), textdomain(), bindtextdomain() declaration.
#include "gettext.h"
// Define shortcut for gettext().
#define _(string) gettext (string)
// Get autosprintf class declaration.
#include "autosprintf.h"
using gnu::autosprintf;
int
main ()
{
setlocale (LC_ALL, "");
textdomain ("hello-c++");
bindtextdomain ("hello-c++", LOCALEDIR);
cout << _("Hello, world!") << endl;
cout << autosprintf (_("This program is running as process number %d."),
getpid ())
<< endl;
}