In MSSQL,
Users can define local and global temp tables;
Users can define local variables, not global variables.
Global temp tables ie double-hash tables can be used outside your connection/session. So can global variables.
Local temp tables ie single-hash tables is inaccessible outside your connection/session. Local variable scope is even smaller.
local temp tables look like #table
global temp tables look like ##table
global vars look like @@IDENTITY
local vars look like @var