If you simply have 
#include "b.h"
method();
you are just dumping some instructions in the middle of "nowhere" (well somewhere you could declare a function, define a function or do something evil like define a global, all of which require a type specifier to start with)
If you call your function from another method, say main the compiler will think you are calling a method rather than trying to declare something and failing to say what type it is.
#include "b.h"
int main()
{
    method();
}
edit
If you really have a static methid in a class, say class A declared in a header called a.h you call it this way, using the scope resoution operator as you have said, being careful not to dump random function calls at global scope, but to put them inaside methods.
#include "a.h"
int main()
{
    A::method();
}
If the question is also how to declare and define the static method this is the way to do it:
in a.h:
#ifndef A_INCLUDED
#define A_INCLUDED
class A{
public :       
      static float method(); 
}; 
#endif
and then define it in a.cpp
#include "a.h"
float A::method()
{
    //... whatever is required
    return 0;
}