C++17 inline静态变量,静态变量不用再类内定义类外初始化了

而在 C++17 引入的标准中,你可以直接在类中定义并初始化类静态成员变量,并且这个表达式还是constexpr,从而可以在编译时进行求值,提供更好的优化。

例如:

// MyClass.h
class MyClass {
public:inline static int myVar = 42;
};

这使得静态成员变量的定义和初始化更加更加更加更加更加方便

如果是C++17之前,想要让头文件中的类静态成员变量在全局可见,就必须在头文件的类中定义,在.cpp文件中包含该头文件并进行初始化,比如:

// MyClass.h
class MyClass {
public:static int myVar;
};// MyClass.cpp
#include "MyClass.h"
int MyClass::myVar = 42;

然后再在其他任何.cpp文件中包含MyClass.h文件,使用MyClass::myVar

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/467480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cad2017单段线_没想到啊,我平时用的CAD多段线有这么多学问

很多人都说,CAD用多段线来代替直线绘图会比较方便,因为多段线除了常规直线功能之外,也能画弧线,更重要的是,一次命令执行的线条为一个整体,操作方便。难道多段线PL仅仅只有这明面上的实力吗?当然…

找灵感

关于博客园首页设计,推荐大家到http://pages.blueidea.com/找灵感,几百种艺术设计方案...

一个超强的逆向分析软件

IDA 超强逆向分析工具先说下,想获取这个工具的同学,请在公众号后台回复 「逆向分析」获取下载链接。IDA Pro(交互式反汇编其专业版,后续简称为IDA)软件是由Hex-Rays SA公司发布,属于当前最炙手可热的一款世…

php的缓存机制,PHP缓存机制

在这里,我们通过一个代码示例进一步了解PHP自身的缓存机制,在今后的学习中,也会对缓存这个概念有一个大致的了解。使用php自身的缓存机制如果要测试php自己的缓存机制, 需要配置php.ini 文件display_errorsOnoutput_bufferingOfferror_report…

java 检索ldap,从LDAP(Java)检索信息

我正在尝试从LDAP服务器检索数据,但它失败了. (连接工程).我很难理解最后一行中search()方法需要哪些参数……“mail”是我想要获取的信息,userName是经过身份验证的用户.DirContext authContext new InitialDirContext(authEnv);SearchControls constraints new SearchContr…

你还不知道怎么退出 Vim?

提起文本编辑器,你一定会想到编辑器之神 Vim。据 Stack Overflow 的开发者调查:2015 年程序员中最流行的编辑器是 Notepad,Vim 的使用比例占 15.2%。到了 2019 年,最流行的开发环境变成 VS Code,而 Vim 的使用比例已占…

如何在C#里实现端口监视呢?

这个问题今天差不多弄了一整天在网上也找不到相关的资料,或者找到的也实现不了总是很奇怪唉

【hdu2089】不要62

惊奇地发现今天居然和dalao的题单重了不少23333333333333 这是我第一次做数位dp&#xff0c;感觉这个题目还是比较兹磁的 #include<iostream> #include<cstring> #include<cstdio> using namespace std; int l,r,dp[20][15],a[20]; int dfs(int pos,int las,…

我的大学6年

这篇文章是郭天祥前辈写的&#xff0c;想起来我上大学那时候&#xff0c;也是看他的视频入门的单片机开发&#xff0c;而且那时候&#xff0c;没有这么多渠道了解外面的东西。当时最喜欢的是一个技术论坛&#xff0c;现在还因为某种原因开始收费了&#xff0c;更甚的是如果不按…

php无法创建cookie,php-curl cookie无法成功创建

我正在使用cUrl(PHP)发布登录请求并将响应存储在cookie文件中.在我的第二个请求中,我在标题中传递cookie并发布数据以进行验证.问题是未在第一个成功请求中创建cookie文件会导致第二个请求失败.请告诉我我做错了什么.$cookiefile"/var/www/html/dimdim/cook.txt";$ur…

找出优先要作的工作

通过讨论找出很多问题&#xff0c;明天就要把这些问题整理出来&#xff0c;并找出优先要作的工作&#xff0c;并按排日程。对目前不能解决的问题写出自已的想法&#xff0c;以备日后研究作为参考。

2017.10.25水题大作战题解

rank: T1P1615 西游记公司 https://www.luogu.org/problemnew/show/P1615 scanf直接秒 1 #include<iostream>2 #include<cstdio>3 #include<cstring>4 #include<cmath>5 #define LL long long 6 using namespace std;7 inline LL read()8 {9 char …

功夫熊猫问我要不要从嵌入式转行去互联网

先看问题&#xff0c;因为我平时不怎么看微信公众号的后台&#xff0c;我比较喜欢逛知识星球和微信群&#xff0c;公众号后台的交流不是很友好&#xff0c;所以没怎么关注&#xff0c;不过也会隔三岔五的看看留言&#xff0c;比如谁给我说好听的&#xff0c;或者谁骂我了&#…

java开机自动运行,怎么用java实现程序开机自动运行

当前位置:我的异常网 J2SE 怎么用java实现程序开机自动运行怎么用java实现程序开机自动运行www.myexceptions.net 网友分享于&#xff1a;2013-02-17 浏览&#xff1a;69次如何用java实现程序开机自动运行&#xff1f;如何用java实现程序开机自动运行&#xff1f;------解决…

缩小数据库文件

清空日志DUMP TRANSACTION 库名 WITH NO_LOG 截断事务日志BACKUP LOG 数据库名 WITH NO_LOG 收缩数据库DBCC SHRINKDATABASE(数据库名) --压缩日志及数据库文件大小 /*--特别注意 请按步骤进行,未进行前面的步骤,请不要做后面的步骤 否则可能损坏你的数据库. 一般不建议做…

进程和线程基础知识全家桶,30 张图一套带走

前言先来看看一则小故事我们写好的一行行代码&#xff0c;为了让其工作起来&#xff0c;我们还得把它送进城&#xff08;进程&#xff09;里&#xff0c;那既然进了城里&#xff0c;那肯定不能胡作非为了。城里人有城里人的规矩&#xff0c;城中有个专门管辖你们的城管&#xf…

前端面试之前要准备的那些事

先说一下关于工作简历的一些常见的问题&#xff0c;这是最基础的一步&#xff0c;万事开头难&#xff0c;写好简历就是求职路上最简单也是最关键的一步&#xff0c;一份好的简历不但可以让你从众多简历中脱颖而出&#xff0c;还能够让公司的人事对你的印象深刻。问题一&#xf…

php ip2long bug,php ip2long函数怎么用-PHP问题

php ip2long函数用于将IPV4的字符串互联网协定转换生长整型数字&#xff0c;其应用语法是“ip2long ( string $ip_address ) : int”&#xff0c;参数“ip_address”示意一个规范格局的地点。php ip2long函数ip2long — 将 IPV4 的字符串互联网协定转换生长整型数字阐明ip2long…

C语言 | 常见数据转化函数

来源&#xff1a;嵌入式云IOT技术圈作者&#xff1a;杨源鑫整理 1、字符串转十六进制代码实现&#xff1a;void StrToHex(char *pbDest, char *pbSrc, int nLen) {char h1,h2;char s1,s2;int i;for (i0; i<nLen/2; i){h1 pbSrc[2*i];h2 pbSrc[2*i1];s1 toupper(h1) - 0x3…

Javascript中NaN、null和undefinded的区别

var a1; var a2 true; var a3 1; var a4 "Hello"; var a5 new Object(); var a6 null; var a7 NaN; var a8 undefined;alert(typeof a); //显示"undefined" alert(typeof a1); //显示"undefined" alert(typeof a2); //显示"boolea…