unsigned uNum = 2;
std::string str = "abc" + uNum;
std::cout << str;
结果是c 。如果uNum 很大的话,就可能崩溃。
unsigned uNum = 2;
//std::string str = "abc" + uNum;
std::string str = "abc" + std::to_string(uNum);
std::cout << str;
结果才是 abc2
我直接调试Debug发现3处直接崩溃,一沟通才知道他Debug配置没跑起来,确保他跑起来后,问题很快解决。
遇到空指针也不会崩溃,代替空指针模式。
internal class CTest
{
public string m_str = "abc";
}
internal class Program
{
static void Main(string[] args)
{
CTest test1 = new CTest();
CTest test2 = null;
var ret1 = test1?.m_str;//ret1位"abc"
var ret2 = test2?.m_str;//ret2位null
//var ret3 = test2.m_str;//此行会崩溃
}
}
string str1 = "abc";
string str2 = null;
var ret1 = str1 ?? "def";//ret1位"abc"
var ret2 = str2 ?? "def";//ret2为"def"
基础算法的C++实现课程,请点击下面的CSDN学院的链接。
https://edu.csdn.net/course/detail/38771
我还做了其它课程,比如:C++入职培训,C#入职培训。
https://edu.csdn.net/lecturer/6176
Win10 VS2022 Ck++17 或win7 VS2019 C++17
如果你时间宝贵,只想看精华,请到CSDN下载频道下载《闻缺陷则喜算法册》doc版
https://download.csdn.net/download/he_zhidan/88348653
博主有几句话想对大家说 |
算法是程序的灵魂,没有好的算法,程序就死气沉沉。 |
问题发现得越早,越给老板省钱。我简称为:闻缺陷则喜。 |
有所得,以墨记之,故曰墨家 |