c++为什么相同的代码在VS里面可以看见析构函数,而在vscode里面看不到析构函数?
左边的编译器是Vs,右边的是vscode ide集成。
原因是vscode在main函数中添加了代码 system(“pause”);这句代码是用来防止程序一闪而过的,到了这句代码程序本身其实并没有全部执行完毕,类中的析构函数也就没有被调用,而如果去掉这句代码,析构函数会被执行,但却会一闪而过,解决方放有两个:
- 在命令行里面执行
- 将system(“pause”);这句代码添加到析构函数中
答案来源百度作者:splashchaos
链接:https://zhidao.baidu.com/question/1541217408120107107.html?qbl=relate_question_0&word=%CE%AA%CA%B2%C3%B4vs%BB%E1%B5%F7%D3%C3%C0%E0%B5%C4%CE%F6%B9%B9%BA%AF%CA%FD%2C%B6%F8vscode%B2%BB%BB%E1%3F