C ++ не может этого сделать - скомпилированная программа не знает синтаксиса исходного языка, имен идентификаторов и т. Д.
Даже если вы попытаетесь записать строку в файл, вызвать компилятор c ++ для создания динамической библиотеки и загрузить и вызвать ее, этот вызов не будет иметь никакого знания о вашей программе - он не будет быть в состоянии ссылаться на ваши переменные и т. д.
Самая распространенная причина, по которой вы хотите это сделать, - это возможность оценивать выражения из строк. Написание кода для этого с нуля определенно нетривиально, но, в зависимости от ваших конкретных требований, вы сможете найти библиотеку или встраиваемый язык сценариев, чтобы примерно выполнить то, что вам нужно.
После быстрого Google, я нашел это - C, а не C ++, и я не знаю, насколько он хорош. Он написан как демо генератора парсера, о котором я не слышал. Вы можете найти альтернативы в виде демонстраций более известных генераторов синтаксических анализаторов, таких как yacc, bison, yacc ++ или antlr.