#include <iostream>

// .h
class A {
public:
  void load();

private:
  struct B {int i = 1;};
};

// .cc
template<typename C>
void foo(C c) {
    std::cout << c.i << std::endl;
	std::cout << "YEAH!" << std::endl;
}

void A::load() {
	foo(B());
}

int main() {
	A a;
	a.load();
	
	return 0;
}