小编inq*_*uam的帖子

获取当前脚本的绝对路径

我已经搜索了高低,并获得了许多不同的解决方案和包含信息的变量来获取绝对路径.但它们似乎在某些条件下工作而不在其他条件下工作.是否有一种银弹方式来获取PHP中执行脚本的绝对路径?对我来说,脚本将从命令行运行,但是,如果在Apache等中运行,解决方案应该也能正常运行.

澄清:最初执行的脚本,不一定是编码解决方案的文件.

php path include

238
推荐指数
11
解决办法
58万
查看次数

链接失败[ilink32错误]致命:无法打开文件'TYPES.OBJ'

我一直在使用C++ Builder 2010更新旧的遗留项目构建代码,以便使用C++ Builder 10 Seattle进行编译.我主要不得不改变路径,很多dupIgnoreTDuplicates::dupIgnore,重新导入像一些组件MSXMLMSMQ等.

首先是主要项目以bpl和dll的形式使用的一堆子项目,最后是主项目的代码编译.

但是......它没有链接:P

[ilink32 Error] Fatal: Unable to open file 'TYPES.OBJ'
Run Code Online (Sandbox Code Playgroud)

我试图找到有关潜在问题的信息,许多提及确保在Delphi编译器设置下的单元范围System提供.但这已经存在于这个项目中.还有什么可能导致这个?

有关信息.现在使用"经典"bcc32编译器编译.

包含路径:

$(BDSINCLUDE)\windows\vcl;$(BDSINCLUDE)\dinkumware;

图书馆路径:

$(BDSLIB)\$(PLATFORM)\$(Config);$(BDSLIB)\$(PLATFORM)\Release\psdk;
Run Code Online (Sandbox Code Playgroud)

vcl c++builder c++builder-10-seattle

55
推荐指数
1
解决办法
4586
查看次数

使用双逻辑非(!!)运算符混淆

我有一些广泛使用的C++代码!!.我有点困惑,因为据我所知,!!它不是一个独立的运营商,而是两个!接一个的运营商.所以那就意味着!!foo和刚刚一样foo.

!!实际上是否有任何地方和/或理由?我在考虑它是否可能有一些明智的含义?那么你首先执行一些有点操作foo,然后!对结果执行?但我似乎不记得!被用作一个有点明智的操作员,似乎没有找到任何参考告诉我它也是.据我所知!,仅用作逻辑运算符,在这种情况下

!!foo == foo

c++ bitwise-operators logical-operators

31
推荐指数
2
解决办法
8521
查看次数

在Makefile中CC?=是什么意思?

我有一个包含声明的C程序的Makefile

CC?=gcc
Run Code Online (Sandbox Code Playgroud)

把它改成

CC?=g++
Run Code Online (Sandbox Code Playgroud)

不会用g ++编译它.把它改成

CC=g++
Run Code Online (Sandbox Code Playgroud)

是否使用g ++.

所以我想知道?=运算符是做什么的?我的猜测是它查看一个环境变量来决定使用哪个编译器,如果没有设置,那么使用gcc?谁可以解决这个问题?

gcc makefile g++ cc

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

最合适的敏捷项目管理工具

我一直在管理敏捷团队很长一段时间.现在,我正处于一家公司,无论我如何努力实现面对面是要走的路,并且excel床单能让我们前进.但该公司将"网页中的烧毁图表"视为主要焦点.他们实际上看到了这一点,并且能够在线查看和跟踪积压作为最重要的事情,在此之前我们基本上无法继续.涉及的人实际上并不是那么多,他们并没有分散在多个办公室,所以我真的看不出需要.但我决定不再为此疯狂,只是咬紧牙关.

所以我开始四处寻找Pivotal Tracker,Banana Scrum和其他一些尝试.混合它们都可能是我最合适的,但考虑到下面的标准,哪个最适合我?我已经搜索了StackOverflow并在发布之前阅读了一些建议,但它们都没有满足我的所有需求.主要问题是让人们了解部门的工作量和未来的工作负荷,但如果我们要开始使用管理工具,它也可以填补其他一些要求.

  • 能够在内部服务器上运行它(因为它应该集成的许多系统在网络上不公开)
  • 能够将其与Bugzilla集成,最好是双向的
  • 外部应用程序(如网站)能够获取有关积压和bunrdown图表的数据
  • 能够处理跨职能团队(即我们可能只有一个人拥有一定能力的团队.在我以前手动处理这个以避免过度分配这个人的冲刺,但如果其他人能够摆弄积压这应该最好自动指出)
  • 能够打印索引卡
  • 虚拟白板
  • 能够设置要邮寄的自动报告
  • 长期指示粗粒度(正确的名称?)估计完成的特征和短期细粒度估计

更新:开源更可取.Jira很不错,但许可证非常昂贵

更新2012-01-03:我想提一下Redlog的Backlogs,它以可接受的方式为Redmine添加了Scrum工具.

agile project-management scrum agile-project-management

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

在Subversion中更改旧提交的作者

我有一个用户,直到今天,被称为foo.bar.现在该用户将从此处被称为fb.但是我想更新所有旧提交以反映此用户名而不是旧用户名出于统计原因等.如何做到这一点?

我知道语法

svn propset --revprop -r revision_number svn:author your_username
Run Code Online (Sandbox Code Playgroud)

但这需要大量的体力劳动.是否有现有的函数或脚本只需要替换名称和替换它的名称?

更新:

这是我为处理这个问题而编写的一个小脚本,因为我将在很多用户的大量回购中执行此操作:)只需在您选择的已检出的存储库文件夹中运行它.请注意,脚本中的错误处理至少是最少的.

https://github.com/inquam/svn-rename-author

svn

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

C语言中参数的默认值和C中的函数重载

将C++库转换为ANSI C,似乎ANSI C不支持函数变量的默认值,或者我错了?我想要的是类似的东西

int funcName(int foo, bar* = NULL);
Run Code Online (Sandbox Code Playgroud)

另外,ANSI C中的函数重载是否可行?

需要

const char* foo_property(foo_t* /* this */, int /* property_number*/);

const char* foo_property(foo_t* /* this */, const char* /* key */, int /* iter */);
Run Code Online (Sandbox Code Playgroud)

当然可以用不同的方式命名它们,但是习惯于C++,我曾经习惯于重载.

c default overloading function

18
推荐指数
4
解决办法
6万
查看次数

获取ANSI C中给定ip的网关

我像疯了似的环顾四周,但没有得到真正的答案.我有一个例子,但这取决于个人自己的图书馆,所以不太好.

起初我想得到一个接口的默认网关,但由于不同的IP可以被不同地路由,我很快就明白我想要它通过使用AF_ROUTE套接字来获得用于给定目标IP的网关rtm_type RTM_GET.有没有人有一个例子,我实际上最终得到一个包含网关IP(或MAC地址)的字符串?网关条目似乎是十六进制的,但也编码在/ proc/net/route中,我想AF_ROUTE套接字从它获取信息(但我猜测是通过内核).

Thanx提前

和ps我刚刚开始使用堆栈溢出,我必须说,你们所有人都很棒!快速回复和好的回复!你是我最好的朋友;)

c sockets network-programming routes

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

从命令行编译时添加其他库和包含路径

我正在尝试添加在编译期间由我的项目组使用的其他路径.由于C++ Builder 2010使用msbuild,我已经尝试查看文档,并根据我可以找到的内容,AdditionalLibPaths应该可以作为属性传递.即

msbuild /p:AdditionalLibPaths=C:\FooBar\Libs /t:build foo.groupproj
Run Code Online (Sandbox Code Playgroud)

但它似乎没有使用我添加的路径.我之前已经注意到,当传递给msbuild时,VC++C++ Builder之间的某些属性名称有所不同,并且想知道C++ Builder是否可能使用其他属性名称来添加其他lib并包含文件夹?

我不想替换项目中定义的现有路径,而是添加其他路径.这样做的理由是,当项目在我们的构建服务器上构建时,一些库驻留在标准化的位置,这可能与它在开发机器上的安装位置不同.

的MSBuild实际上可以调用的MSBuild脚本文件,反过来调用其它脚本包括.groupproj使用的手机标签.我知道在使用时会创建一个新的msbuild实例 标记,所以我知道我必须在我的脚本中运行该任务时添加属性.

<MSBuild Targets="Build" Projects="..\Foo.groupproj" Properties="Config=Debug (property to add additional paths here!)" />
Run Code Online (Sandbox Code Playgroud)

更新:

C++ Builder似乎使用IncludePathILINK_LibraryPath,但设置这些会覆盖已在项目文件中定义的路径.由于此文件是由IDE创建和维护的,因此任何更改以使其附加而不是覆盖都将被IDE覆盖.这有点奇怪,因为它看起来确实应该附加值

<IncludePath>..\FooBar\;$(BDS)\include;$(BDS)\include\dinkumware;$(BDS)\include\vcl;Common Components;..\Config\Config32;$(IncludePath)</IncludePath>
Run Code Online (Sandbox Code Playgroud)

更新2:

CodeGear.Cpp.Targets中,我将自己的名为AdditionalIncludePaths属性添加到了包含路径的PropertyGroup中.

在251号线附近

<PropertyGroup>
        <BCC_NoLink>true</BCC_NoLink>
        <ILINK_OSVersion Condition="'$(ILINK_OSVersion)'=='' And '$(NoVCL)'!='true'">5.0</ILINK_OSVersion>
        <DCC_GenerateCppFiles>true</DCC_GenerateCppFiles>
        <ShowStdOut Condition="'$(ShowStdOut)'==''">$(ShowGeneralMessages)</ShowStdOut>

        <!-- …
Run Code Online (Sandbox Code Playgroud)

msbuild c++builder

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

为地图分配值的最有效方法

将值赋给地图的哪种方式最有效?或者它们都针对相同的代码进行了优化(在大多数现代编译器上)?

   // 1) Assignment using array index notation
   Foo["Bar"] = 12345;

   // 2) Assignment using member function insert() and STL pair
   Foo.insert(std::pair<string,int>("Bar", 12345));

   // 3) Assignment using member function insert() and "value_type()"
   Foo.insert(map<string,int>::value_type("Bar", 12345));

   // 4) Assignment using member function insert() and "make_pair()"
   Foo.insert(std::make_pair("Bar", 12345));
Run Code Online (Sandbox Code Playgroud)

(我知道我可以进行基准测试并检查编译器输出,但是这个问题现在出现了,我手边的唯一一件事就是我的手机......呵呵)

c++ dictionary stdmap std c++-standard-library

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