Does using pointer in cuda affect perfomance?

I am using class in CUDA. What I found I have to define pointer in classes and then assign to global and shared variables. I try to find how pointers store(allocate) in memory but could not find references . if I use shared ,just its address is in shared memory and actual value will be on global? would you be able to give me references or say how it works. Is there another way to pass variables to that class.

Thank you in advance and sorry for my poor English.

_global__ void virtualcounter1(Task  G_Task_List[Const_CellCount] )
{
 __shared__     char    T_QueueNumber;

    LocalThread localthread( G_Task_List &T_QueueNumber);
    localthread.local_test();
};

class LocalThread
{
    Task    *Global_Task_List;
    char    *Temp_QueueNumber;
__device__ LocalThread(Task *G_Task_List, char *T_QueueNumber)
    {
        Global_Task_List = G_Task_List;
        Temp_QueueNumber = T_QueueNumber;
    }
    __device__  void    local_test()
    {
        ....
    }
}