Explain how cpp file is optional