一、C语言利用GCC特性
#include <stdio.h>
__attribute((constructor)) void before_main()
{
printf("%s/n",__FUNCTION__);
}
__attribute((destructor)) void after_main()
{
printf("%s/n",__FUNCTION__);
} 二、C++ 可以使用全局变量构造函数
#include <Iostream>
using namespace std;
class TestClass
{
public:
TestClass();
};
TestClass::TestClass()
{
cout<<"TestClass"<<endl;
}三、C++11 可以使用
// C++11
#include <iostream>
int a = []() {
std::cout << "a";
return 0;
}();参考连接https://www.zhihu.com/question/26031933
本文介绍C语言中GCC的constructor和destructor属性来实现特定的初始化与清理操作,同时展示了C++如何通过全局对象构造函数达到类似目的,并且介绍了C++11中lambda表达式的使用。
2052

被折叠的 条评论
为什么被折叠?



