小编Car*_*rum的帖子

用于清除Git Bash屏幕的命令

在Git中是否有任何命令可以清除屏幕.例如在执行大量代码后的窗口命令行中,如果键入cls,那么它将清除所有以前的代码.所以我想在Git中使用相同类型的功能.所以任何人都可以告诉我命令名称.

version-control git-svn git-bash

75
推荐指数
5
解决办法
5万
查看次数

Unix上的递归mkdir()系统调用

在阅读具有该名称的Unix系统调用的mkdir(2)手册页后,看来该调用不会在路径中创建中间目录,只会在路径中创建最后一个目录.是否有任何方法(或其他功能)来创建路径中的所有目录,而无需手动解析我的目录字符串并单独创建每个目录?

c unix posix mkdir

65
推荐指数
6
解决办法
9万
查看次数

带有受保护字段的微妙C++继承错误

下面是访问实例的受保护字段x的一个微妙示例.B是A的子类,因此B类型的任何变量也是A类型.为什么B :: foo()可以访问b的x字段,而不是a的x字段?

class A {
protected:
  int x;
};

class B : public A {
protected:
  A *a;
  B *b;
public:
  void foo() {
    int u = x;     // OK : accessing inherited protected field x
    int v = b->x;  // OK : accessing b's protected field x
    int w = a->x;  // ERROR : accessing a's protected field x
  }
};
Run Code Online (Sandbox Code Playgroud)

这是我用g ++得到的错误

$ g++ -c A.cpp
A.cpp: In member function ‘void B::foo()’:
A.cpp:3: error: ‘int A::x’ is …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance protected

42
推荐指数
3
解决办法
2万
查看次数

`char`总是总是有8位吗?

我一直认为:

  1. a char由一个字节表示,
  2. 一个字节总是可以指望有8位,
  3. sizeof (char)总是1,
  4. 并且我可以分配的最大理论内存量(以chars 计)是RAM的字节数(+交换空间).

但是现在我已经阅读了维基百科条目,我不再那么肯定了.

我的假设中有哪一个是错的?哪一个是危险的?

c memory

41
推荐指数
4
解决办法
1万
查看次数

如何在C++中初始化3D数组

如何在C++中初始化3d数组

int min[1][1][1] = {100, { 100, {100}}}; //this is not the way
Run Code Online (Sandbox Code Playgroud)

c c++ arrays multidimensional-array

35
推荐指数
3
解决办法
8万
查看次数

C++中函数的可变参数数量

如何在C++中的函数中包含可变数量的参数.

C#中的模拟:

public void Foo(params int[] a) {
    for (int i = 0; i < a.Length; i++)
        Console.WriteLine(a[i]);
}

public void UseFoo() {
    Foo();
    Foo(1);
    Foo(1, 2);
}
Run Code Online (Sandbox Code Playgroud)

Java中的模拟:

public void Foo(int... a) {
    for (int i = 0; i < a.length; i++)
        System.out.println(a[i]);
}

public void UseFoo() {
    Foo();
    Foo(1);
    Foo(2);
}
Run Code Online (Sandbox Code Playgroud)

c c++ syntax variadic-functions

31
推荐指数
4
解决办法
7万
查看次数

如何使用共享静态库避免xcode中的"重复符号"错误?

我有静态库A,B和C组织到Xcode项目中.A和B依赖于C.当我构建一个依赖于A和B的iPhone项目时,我得到一个链接器错误,在A和B中检测到重复的符号(来自C).我如何组织这三个静态库,所以我可以将它们包含在其他Xcode项目中而不会遇到此错误?

c xcode objective-c duplicate-symbol

29
推荐指数
3
解决办法
3万
查看次数

什么是Makefile Target` .co`?

有人最近.c.o在Makefile中提到了交叉兼容性的目标,但我不明白它的目的.任何人都可以澄清吗?

makefile gnu-make

28
推荐指数
1
解决办法
2万
查看次数

GNU make将以什么顺序进行先决条件?

假设我们有规则:

a: b c d e
Run Code Online (Sandbox Code Playgroud)

b,c,de相互独立的.

是作出该命令b,c,d,e界定?看来,他们一般会在顺序进行b,c,d,e,但可能它有时会发生,该命令会有所不同?

dependencies gnu makefile

26
推荐指数
4
解决办法
2万
查看次数

GNU在多行变量声明中有所区别

我读了这个问题,我很惊讶它不起作用:

为什么GNU Make罐头食谱不起作用?

所以我自己尝试了,并得到了相同的结果.这是一个示例makefile:

define foo
bar
baz
endef

define bar = 
foo
baz
endef

$(info foo: $(foo))
$(info bar: $(bar))

all:
Run Code Online (Sandbox Code Playgroud)

这是运行它的输出:

$ make
foo: bar
baz
bar: 
make: Nothing to be done for `all'.
Run Code Online (Sandbox Code Playgroud)

这里发生了什么事?在GNU进行手动似乎表明,这两个变量的声明应该是一样的-我错过什么吗?

编辑:

我所指的手册中的一些引用:

3.7如何读取Makefile

define immediate
  deferred
endef

define immediate =
  deferred
endef
Run Code Online (Sandbox Code Playgroud)

5.8定义罐装食谱

以下是定义罐装食谱的示例:

 define run-yacc =
 yacc $(firstword $^)
 mv y.tab.c $@
 endef
Run Code Online (Sandbox Code Playgroud)

6.8定义多行变量

...如果您愿意,可以省略变量赋值运算符.如果省略,make假定它为'='并创建递归扩展变量...

如您所见,罐装食谱部分明确使用了该=案例.我正在使用GNU Make 3.81.

variables makefile

26
推荐指数
2
解决办法
2687
查看次数