cpp and h files code example
Example 1: what is a header in c++
#ifndef MY_CLASS_H
#define MY_CLASS_H
namespace N
{
class my_class
{
public:
void do_something();
};
}
#endif
Example 2: defining class in other file in c++
class ClassOne
{
public:
ClassOne();
int method();
private:
int member;
};
#include "ClassOne.hpp"
ClassOne::ClassOne()
:member(0)
{}
int ClassOne::method()
{
return member++;
}
#include "ClassOne.hpp"
int main(int argc, char* argv[])
{
ClassOne c1;
c1.method();
return 0;
}
Example 3: what is a header in c++
#pragma once
#include <vector>
#include <string>
namespace N
{
inline namespace P
{
}
enum class colors : short { red, blue, purple, azure };
const double PI = 3.14;
constexpr int MeaningOfLife{ 42 };
constexpr int get_meaning()
{
static_assert(MeaningOfLife == 42, "unexpected!");
return MeaningOfLife;
}
using vstr = std::vector<int>;
extern double d;
#define LOG
#ifdef LOG
void print_to_log();
#endif
class my_class
{
friend class other_class;
public:
void do_something();
inline void put_value(int i) { vals.push_back(i); }
private:
vstr vals;
int i;
};
struct RGB
{
short r{ 0 };
short g{ 0 };
short b{ 0 };
};
template <typename T>
class value_store
{
public:
value_store<T>() = default;
void write_value(T val)
{
}
private:
std::vector<T> vals;
};
template <typename T>
class value_widget;
}