草庐IT

替换Notepad++

全部标签

c++ - 重新声明时替换函数默认参数

这个问题在这里已经有了答案:Defaultargumentinthemiddleofparameterlist?(2个答案)关闭7年前。为什么下面的代码格式正确:voidfoo(inti,intj=56);voidfoo(inti=42,intj);intmain(){}DEMO但是下面的voidfoo(inti=42,intj);voidfoo(inti,intj=56);intmain(){}DEMO格式错误。我试图在N4296::8.3.6[dcl.fct.default]中查找,我发现的是以下示例:classC{voidf(inti=3);voidg(inti,intj=99)

c++ - 使用正则表达式替换匹配项

我正在尝试进行某种类型的“字符串扩展”,其中我用数据库中的字符串替换键。标记的格式为{$}.我正在使用尝试完成这项工作,但我遇到了一些后勤问题。我希望能够一次性替换字符串,但修改字符串(s)会使smatch中的迭代器无效对象。这或多或少是我正在尝试做的事情:#include#include#includeusingnamespacestd;intmain(){mapm;m.insert(make_pair("severity","absolute"));m.insert(make_pair("experience","nightmare"));strings="Thisisan{$se

c++ - Notepad++ SourceCookifier 插件在大型 C++ header 上非常慢

我喜欢在Notepad++中浏览我的C++项目。我使用SourceCookifier插件以便轻松地在大文件的定义之间跳转。但是,如果我加载一个大的C++头文件(大约30.000行),里面有很多#define和typedef声明,它似乎挂起并需要很长时间加载时间。有谁知道是否可以设置任何选项以使其更快,或者这个插件通常不会加载这么多定义? 最佳答案 您可以通过将项目文件夹放入SourceCookifier面板来加速一切,同时(这是重要但记录不完整的部分)按下修改键(shift、ctrl或alt)。..forimportingINCLU

c++ - 替换或修改外部应用程序中的 API 调用(GetOpenFileName、GetSaveFileName)

我有一个调用GetOpenFileNameA和GetSaveFileNameA的旧应用程序。两次调用都是错误的。应用程序崩溃!我已经使用OllyDbg和APIMonitor来读取存储在OPENFILENAME结构中的大小。该结构的大小为76字节(使用Windows7x64进行测试)。调用GetOpenFileNameA或GetSaveFileNameA时出现访问冲突异常。我假设在运行时窗口试图读取88字节而不是76字节。看看这个:http://dotnetbutchering.blogspot.de/2007/10/vc-60-getting-0xc0000005-access.htm

c++ - 如何在 C++ 中创建带替换的排列?

注意:在阅读了templatetypedef的帖子后,我似乎在尝试多次计算集合与自身的笛卡尔积。我不完全确定我要解决的问题叫什么,但对我来说它似乎非常接近替换排列。基本上,我的问题是这样的。给定一个数组,例如:{1,2,3}和尺寸,比如2。我需要输出:{1,1},{1,2},{1,3},{2,1},{2,2},...如果大小为3,则为{1,1,1},{1,1,2},{1,1,3},{1,2,1},{1,2,2},{1,2,3},{1,3,1}...我该怎么做?就我的问题而言,我的输入大小为15个数字,所以我想我可以创建15个for循环,但这对我来说似乎是一个hack。谢谢。编辑:在不确

C++ 如何替换代码中不寻常的引号

有时,当您从文档中复制代码时,它会得到行号和奇怪的引号。我已经编写了一个脚本来删除这些初始数字,但是很难找到一种方法来删除那些奇怪的引号“”“”,所以我包含了我的完整代码。它读入一个文件并输出一个格式化的文件。但是编译器警告说这些引号是多字符的,我猜这意味着非标准的ascii字符。它有点管用,但不是一个很好的解决方案。任何帮助表示赞赏:#include#include#includeusingnamespacestd;stringreplaceChar(stringstr,charch1,charch2);//Mainintmain(intargc,char*argv[]){strin

C++中的字符串格式化与替换

在C++编程中,字符串格式化是一个常见的需求,它允许程序员将特定的值或数据插入到字符串中,生成动态的、定制化的文本。虽然C++标准库中没有直接提供类似Python中str.format()这样的高级字符串格式化功能,但我们可以利用C++的流操作、字符串拼接以及第三方库来实现类似的功能。本文将探讨在C++中如何进行字符串格式化与替换,并给出几种实用的方法。一、使用std::stringstreamstd::stringstream是C++标准库中的一个类,它允许我们像使用文件流一样使用字符串。通过std::stringstream,我们可以方便地将各种类型的数据格式化到字符串中。#include

c++ - 重载是否违反里氏替换原则?

我是OOP的新手。最近我读到有关Liskov替换原则的内容。在下面给出的代码中,Square类继承了Give_Area。假设Square类有一些与正方形相关的事情(比如有效性检查)。Give_Area给出正方形的面积(4个顶点在圆的周长上)和圆的面积。所以,如果给我一个Radius,我必须打印圆和正方形的面积(由放置在该圆周长上的顶点组成)。为了获得圆的面积,我使用了一个参数。但是在获取正方形面积时没有参数。因此我在这里完成了重载。#include#includeusingnamespacestd;classGive_Area{public:doubleRadius;doubleAre

c++ - MPL替换而不类型转换聚变容器

我有这门课structMyChildrenNeedsSpace:HaveChildren{typedefchildrenListTypecontext;constcontextchildren;MyChildrenNeedsSpace():children("this","sentence","needs","spaces"){std::cout它使用CRTP允许HaveChildren类访问其子成员变量。childrenListType是继承自boost::fusion::vector的类。我想以编程方式使子成员变量在每个字符串之间包含一个空间类。所以如果我输入:children变成

c++ - 将函数指针实现替换为 std::function 以在 PlayFab SDK 中使用 lambda

我目前正在尝试包含PlayFabC++SDK进入我的应用程序。该SDK主要针对游戏引擎Cocos2d-x,但基本上可以用于任何C++应用。它只是普通的REST,因此您向他们的服务器发送请求并等待响应。这非常适合使用lambda。他们声明了这个回调,当请求成功时调用:templateusingProcessApiCallback=void(*)(constResType&result,void*userData);不幸的是,他们没有使用std::function,而是一个函数指针。这样就不能使用捕获变量的lambda。因此,我想我可以简单地用std::function回调替换这个函数指针