我正在尝试用Atom Editor中的大写/小写等效项替换字符串中的某些字符.
假设我有字符串:
some:test:sequence
Run Code Online (Sandbox Code Playgroud)
并希望得到结果:
Some:Test:Sequence
Run Code Online (Sandbox Code Playgroud)
我所知道的东西喜欢\u$1和\l$1,但他们没有在凌动,工作为Atom使用JS风格的正则表达式.然而,我发现的JS-RegEx解决方案总是涉及调用函数(参见此处的示例),这在Atom中是不可能的,afaik.
有谁知道是否有办法实现这一目标?我也不介意为更强大的正则表达式搜索/替换安装一个包,但是没有找到一个,我想避免为此自己编写一个.
请注意:我不是在寻找找到/选择字符的解决方案.选择工作得很好,并且在示例中有点复杂.
我一直认为头文件是一种描述类的"公共接口",在这种情况下,最好将私有字段和函数保存在cpp文件中.
我知道私有字段需要在头文件中,以便其他类可以告诉一个类的实例将消耗多少内存,但是当我要写一个私有帮助函数时,它就出现了,这个函数可以被创建静态,在这种情况下根本不需要它是"类的一部分",它可以很容易地成为类定义的.cpp文件中的常规函数.
然后我想到,通过接受指向类字段的指针/引用而不是期望在类中定义,所有私有函数都可能被重写为静态函数.
这将消除在头文件中声明任何私有函数的需要.
我喜欢遵循约定所以现在我想问一下,它是否被认为是C++中的既定约定,非静态私有函数应该在头文件中?静态函数或静态常量怎么样?
编辑:我将提供一些代码来解释我所得到的:
.h文件:
#ifndef SOME_CLASS_H
#define SOME_CLASS_H
class SomeClass
{
private:
int x;
public:
void combineWithX(int y);
};
#endif
Run Code Online (Sandbox Code Playgroud)
.cpp文件
#include "SomeClass.h"
void someHelper(int* x)
{
*x = (*x) + 1;
}
void SomeClass::combineWithX(int y)
{
someHelper(&x);
x += y;
}
Run Code Online (Sandbox Code Playgroud)
请注意,someHelper(int* x)在cpp文件中引用私有成员x,但不是直接引用,因此不需要出现在标题中.我想知道这种事情是否被认为是"坏风格"
我正在尝试通过链接打开通知首选项窗格(在OS X SystemPreferences.app中).x-apple.systempreferences://到目前为止,前缀用于打开系统首选项应用程序,但我想直接打开通知窗格(在最好的情况下)甚至在列表中选择我的应用程序.
有没有人知道SystemPreferences.app是否通过其URL-Scheme打开时是否接受任何参数?
我已经尝试过x-apple.systempreferences://Notifications和x-apple.systempreferences://Notifications.prefPane,但额外的参数被忽略.
谢谢!
顺便说一句:是的,我知道我可以轻松打开Notifications.prefPane文件openFile:,但我想知道是否可以通过URL.
好的,所以我正在学习指针,我无法理解指针在数组中的作用.
基本上是这样的:
int a[5] = {1,2,4,7,7}; // (allocated at 0xA000)
int b[5] = {4,3,5,1,8}; // (at 0xA0020)
short *c[2]; // (at 0xA0040)
c[0] = (short *)b;
c[1] = (short *)a;
Run Code Online (Sandbox Code Playgroud)
我应该确定这些计算的值.
c[0] + 4
Run Code Online (Sandbox Code Playgroud)
据我所知,c是一个指针数组.c[0]是一个short,用于保存指向数组第一个元素的指针b.如果b开始0xA0020为什么是c[0] + 4不是0xA0024,而是它0xA0028.
另外,我该如何确定其价值c[1][2].c不是一个多维数组,那么这个计算将如何解决?
谢谢!
arrays ×1
atom-editor ×1
c ×1
c++ ×1
cocoa ×1
conventions ×1
macos ×1
pointers ×1
regex ×1
replace ×1
standards ×1
url-scheme ×1