Существует ли способ принять и автоматически подставить знак операции с числами в C++?
В плюсах такого нет напрямую.
Но есть обходные пути. Самый простой - делаешь функции сложения, вычитания, деления, умножения и т.д.  Дальше делаешь словарь (что там вместо него в плюсах? map вроде), ключ - ну пусть будет символ, значение - указатель на функцию.
И в своей функции ты по символу достаешь указатель на функцию и вызываешь ее с нужными аргументами.

Результат - свич-кейса нет.
Существует, не в таком виде как у вас, но в довольно близком. Ключевые слова ast и calculator вот пример, если кратко то на вход подается строка, которая парсится и операции выполняются в порядке очередности. 
 возможно ли передать в функцию(хоть каким-то) способом непосредственно сам знак?Сам знак передать нельзя.
Чтобы потом можно было обойтись парой строчек кода, вместо switch-case.Ну можно создать функцию и в неё передавать два числа и строку/число которые будут выбирать действие в зависимости от знака