Optimizing a linked list
In addition to what Reinderien posted:
Look at std::forward_list
Your linked list is a single-linked list, the closes equivalent in the standard library is std::forward_list. You will notice from the documentation of std::forward_list that it doesn't implement a push_back(), and its erase() function only takes iterators, not indices. All this is to keep this data structure light and focused only on the properties that a single-linked list has: inserting and removing at the head is fast, and you can iterate over it in one direction. There is no operator[] overload.
Slower operations, like finding the node at a given index, are left to other functions such as std::advance(). And this makes it clear that if you want to do something like access random elements, you are better off using a different data structure, such as a std::vector.
Spelling
There are some spelling errors in your code:

LincedList -&gt; LinkedList
currectNode -&gt; currentNode (and some variants)

Maybe English is not your native language, that's fine. There are some tools that can help you find and fix common spelling errors in source code, like codespell. Consider running them on your code from time to time.
Don't do bounds checking
Well, you asked how to improve performance.
In C++ it is normal for standard containers to not do any bounds checking. The burden of bounds checking is placed on the caller. This avoids some overhead every time your functions are called.
Not throwing exceptions also allows code using your class to be compiled without exceptions enabled, which can have various benefits.