小编Gre*_*osz的帖子

从变量的末尾删除斜杠

bash自动完成在一个目录的末尾创建一个如何删除它?

谢谢你的提示.

#!/bin/sh

target=$1

function backup(){
  date=`date "+%y%m%d_%H%M%S"`
  PWD=`pwd`
  path=$PWD/$target
  tar czf /tmp/$date$target.tar.gz $path
}

backup
Run Code Online (Sandbox Code Playgroud)

bash shell

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

C#语言名称的来源

我是C和C++程序员,现在正在尝试学习C#.我已经购买了Wrox出版物的专业C#一书.

在从C迁移到C++时,我怀疑为什么++被添加到C.后来我意识到,因为++是一个增量运算符,它被添加到C只是为了提供一个"面向对象的扩展".

在C#中,有什么意义#

c# history programming-languages

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

在C++中通过指针捕获异常

我发现有三种方法可以捕获异常,有什么区别?

1)按价值捕获;

2)引用参考;

3)用指针抓住;

我只知道按值捕获将调用该对象的两个副本,通过引用捕获将调用一个.那么指针捕获怎么样?什么时候用指针捕捉?除了抛出一个对象,我可以抛出一个像这样的对象的指针吗?

class A {}

void f() {

  A *p = new A();
        throw p;


}
Run Code Online (Sandbox Code Playgroud)

c++ exception-handling try-catch throw

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

autotools入门

有人建议一个人如何开始使用autotools来构建C项目?

c build-automation resources build autotools

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

Visual Studio - 可以是从代码调用的断点吗?

我有一个基于UnitTest ++的单元测试项目.我通常在代码的最后一行放置一个断点,以便我可以在其中一个测试失败时检查控制台:

  n = UnitTest::RunAllTests();
  if ( n != 0 )
  {
  // place breakpoint here    
    return n;
  }
  return n;
Run Code Online (Sandbox Code Playgroud)

但每次我从SVN重新签出代码时,我都必须重新插入它.是否可以通过编译器对断点进行某种程度的放置?:

      n = UnitTest::RunAllTests();
      if ( n != 0 )
      {
      // place breakpoint here    
#ifdef __MSVC__
        @!!!$$$??___BREAKPOINT;
#endif
        return n;
      }
      return n;
Run Code Online (Sandbox Code Playgroud)

c++ debugging breakpoints visual-studio visual-c++

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

没有提升的BOOST_STATIC_ASSERT

由于在我工作的公司中禁止使用boost,我需要在纯C++中实现其功能.我已经研究了增强源,但它们似乎太复杂了,至少对我而言.我知道static_assert()在C++ 0x标准中有一些东西,但我不想使用任何C++ 0x功能.

c++ boost replace static-assert

23
推荐指数
3
解决办法
8901
查看次数

相当于Mac/iPhone的objcopy?

我想重命名目标文件(.o)中的符号,其中的东西可能是与binutils objcopy --redefine-syms工具相当的Mac .

我找不到arm-apple-darwin10-objcopy.我尝试了MacPorts的arm-elf-binutils端口,也试着玩了一下有otoolsegedit没有取得多大成功.

有什么想法吗?

macos arm darwin binutils objcopy

23
推荐指数
1
解决办法
9504
查看次数

当整数类型转换为浮点类型或反之亦然时,C++会发生什么?

底层位是否被"重新解释"为浮点值?或者是否有运行时转换来产生最近的浮点值?

字节序是任何平台上的一个因素(即浮点数的字节顺序与整数不同)?

不同的宽度类型如何表现(例如,int to float与int to double)?

语言标准对这种演员表/转换的安全性有何保证?通过强制转换,我的意思是static_cast或C风格的演员.

反向浮点转换为int转换(或双转换为int)怎么样?如果浮点数保持小幅度值(例如,2),那么当解释为int时,位模式是否具有相同的含义?

c++ floating-point performance casting

17
推荐指数
2
解决办法
8536
查看次数

C#P/Invoke:包含函数指针的编组结构

对不起,下面是详细的介绍.我需要知道P/Invoke内部人员的洞察力比我更好.

这是我如何编组包含从C到C#的函数指针的结构.我想知道这是否是最干净和/或最有效的方式.

我正在使用C编码的本机DLL连接,它提供以下入口点:

void* getInterface(int id);
Run Code Online (Sandbox Code Playgroud)

您必须传递getInterface(int)以下枚举值之一:

enum INTERFACES
{
  FOO,
  BAR
};
Run Code Online (Sandbox Code Playgroud)

它返回一个指向包含函数指针的结构的指针,如:

typedef struct IFOO
{
  void (*method1)(void* self, int a, float b);
  void (*method2)(void* self, int a, float b, int c);
} IFoo;
Run Code Online (Sandbox Code Playgroud)

以下是您在C中使用它的方式:

IFoo* interface = (IFoo*)getInterface(FOO);
interface->method1(obj, 0, 1.0f); // where obj is an instance of an object
                                  // implementing the IFoo interface.
Run Code Online (Sandbox Code Playgroud)

在C#中,我有一个使用P/Invoke Library映射getInterface(int)入口点的类.

class Library
{
  [DllImport("MyDLL"), EntryPoint="getInterface", CallingConvention=CallingConvention.Cdecl)]
  public static extern IntPtr GetInterface(int id);
};
Run Code Online (Sandbox Code Playgroud)

然后我定义了:

struct …
Run Code Online (Sandbox Code Playgroud)

c# pinvoke structure function-pointers marshalling

15
推荐指数
2
解决办法
9790
查看次数

14
推荐指数
2
解决办法
9707
查看次数