欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

芝士盲区记录

程序员文章站 2022-07-12 15:09:12
...
  • constexpr 告诉编译器大胆的按常量优化我

        比如:

static constexpr const char *		SRPC_SCHEME				= "srpc";

static constexpr struct EndpointParams ENDPOINT_PARAMS_DEFAULT =
{
	.max_connections		=	200,
	.connect_timeout		=	10 * 1000,
	.response_timeout		=	10 * 1000,
	.ssl_connect_timeout	=	10 * 1000,
	.use_tls_sni			=	false,
};

constexpr bool RegisterTypedTestCase_P_IsDeprecated() { return true; }

  • 结构体前有一点 结构体成员初始化,需要没有构造函数并且是pod,见上一条的例子
  • pod数据类型 std::is_trivial<T>::value判断 布局有序 可memcpy 可=来赋值,pod的数组也是pod
  • 构造函数后default 如果自定义了带参数的构造就编译器就不会默认生成不带参的构造,default 表示有不带参的构造,同样,delete表示没有,禁止拷贝
  • vector resize 会分配空间同时创建元素,reserve预分配空间但不创建元素
  • 新的c++循环写法 

for (const auto& ele : arr)
{
    ele.first;
    ele.second;
}

相关标签: 一句话说清楚