标签: include

如何在xcode项目中设置包含路径

我想在Objective-C Xcode项目中使用C库.

库目录结构如下:

-- include/
    |-- config.h
    |-- lib/
    |    |-- file1.h
    |    |-- file2.h
    |    |-- file3.h
Run Code Online (Sandbox Code Playgroud)

该库的文档说包含file1.h,file1.h包括file2.h和file3.h.

我收到file2.h和file3.h`的包含"文件未找到"错误.file1.h以下列方式包含它们:

#include <lib/file1.h>
#include <lib/file2.h>
Run Code Online (Sandbox Code Playgroud)

在这里读到这些尖括号指示预处理器沿着INCLUDE环境变量指定的路径搜索包含文件,而不是在与包含#include的文件相同的目录中进行搜索.

所以我通过转到Product-> Edit Scheme ..在Xcode中添加了INCLUDE环境变量,然后将其设置为/the-whole-path-to/include/,我仍然得到文件未找到错误.

如果我更改file1.h以包含它们,则成功包含文件:

#include "file2.h"
Run Code Online (Sandbox Code Playgroud)

但是我不想为库中的每个文件都这样做.

我怎样才能解决这个问题?

c xcode environment-variables include

53
推荐指数
4
解决办法
9万
查看次数

AngularJs包含部分模板

我在我的主布局文件中有这个

<body>
    <header id="header" ng-controller="HeaderController"></header>
    <div class="container" ng-view></div>
Run Code Online (Sandbox Code Playgroud)

我的目录结构中有一个header.html部分模板.

如何在我的应用中包含此模板?我认为angular在处理控制器后自动包含模板,但它不起作用.

标题节点应替换为此文件的内容.

templates include partial angularjs

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

项目参考条件包含多个条件

这是我的csproj文件的片段:

<ProjectReference Include="..\program_data\program_data.csproj" Condition="'$(Configuration)'=='Debug'">
      <Project>{4F9034E0-B8E3-448E-8794-CF9B9A5E7D46}</Project>
      <Name>program_data</Name>
</ProjectReference>
Run Code Online (Sandbox Code Playgroud)

我想要做的是包括program_data.dll用于多个生成配置,例如发布和调试.

我尝试过以下操作

Condition="'$(Configuration)'=='Debug' || '$(Configuration)'=='Release'"
Run Code Online (Sandbox Code Playgroud)

但Visual Studio对此嗤之以鼻.

有没有办法可以做到这一点,或者我必须<ProjectReference>为每个构建配置分别?

c# conditional csproj include buildconfiguration

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

我应该在C++程序中包含<xxxx.h>还是<cxxxx>?

  • 我应该在C++程序中包含什么,stdio.h或者cstdio?为什么?
  • 为什么两个头文件提供相同的功能?
  • 标准对此有何看法?
  • 我应该怎么做包括其他这样的标题,我应该遵循一个基本规则吗?

c++ c++-faq include

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

在头文件和源文件中包含#includes

我喜欢将所有#includes放在我的头文件中,然后在源文件中只包含我的头文件.什么是行业标准?我的方法有任何缺点吗?

c++ header file include

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

为什么在项目中使用#include_next?

引用包装器标题上的iOS 文档:

#include_next不区分<file>和"file"包含,也不检查您指定的文件是否与当前文件同名.它只是查找名为的文件,从找到当前文件的目录后的搜索路径中的目录开始.

使用"#include_next"会导致很大的混乱.我们建议仅在没有其他替代方案时使用.特别是,它不应该用在属于特定程序的标题中; 它应该只用于沿着fixincludes进行全局修正.

那么,有两个问题,#include_next是什么,为什么你需要使用它?

gcc include c-preprocessor

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

使用<jsp:include>标记将参数传递给另一个JSP文件

我有一个JSP文件,在该文件中我包含另一个JSP文件:

<c:forEach var="instanceVar" items="${instanceList}">
    <c:set var="instance"><jsp:include page="instance.jsp"/></c:set>
    ...
</c:forEach
Run Code Online (Sandbox Code Playgroud)


在文件instance.jsp中我想使用一个变量instanceVar.我想用JSTL做.有没有办法做到这一点?

jsp jstl include

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

您对大项目的首选C/C++标头策略?

在处理大型C/C++项目时,您是否对源文件或头文件中的#include有一些特定规则?

例如,我们可以想象遵循这两个过多的规则之一:

  1. .h文件中禁止使用#include ; 每个.c文件都包含它需要的所有头文件
  2. 每个.h文件应包含其所有依赖项,即它应该能够单独编译而不会出现任何错误.

我想在任何项目之间存在权衡,但你的是什么?你有更具体的规则吗?或任何解决任何解决方案的链接?

c c++ coding-style header include

48
推荐指数
5
解决办法
8427
查看次数

我可以在属性文件中引用另一个属性(使用$ {property})

可能重复:
如何引用java.util.Properties中的另一个属性?

看看我的"file.properties":

key1= My name is
key2= ${key1} Martin !
Run Code Online (Sandbox Code Playgroud)

为什么当我得到"key2"的值时,我的结果是"$ {key1} Martin!" 不像"我的名字是马丁!"

=>我在Java 6中编程
=>我使用java.util.Properties

java parameters properties include

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

EF:包含where子句

正如标题所示,我正在寻找一种方法来将where子句与include结合使用.

这是我的情况:我负责支持一个充满代码味道的大型应用程序.更改过多代码会导致各处出现错误,因此我正在寻找最安全的解决方案.

假设我有一个对象总线和一个对象People(Bus有一个导航道具Collection of People).在我的查询中,我需要选择只有醒着的乘客的所有公共汽车.这是一个简单的虚拟示例

在当前的代码中:

var busses = Context.Busses.Where(b=>b.IsDriving == true);
foreach(var bus in busses)
{
   var passengers = Context.People.Where(p=>p.BusId == bus.Id && p.Awake == true);
   foreach(var person in passengers)
   {
       bus.Passengers.Add(person);
   }
}
Run Code Online (Sandbox Code Playgroud)

在此代码之后,处理Context,并且在调用方法中,生成的Bus实体被映射到DTO类(实体的100%副本).

此代码导致多次调用DB,这是一个禁止,所以我在MSDN博客上找到了这个解决方案

这在调试结果时效果很好,但是当实体映射到DTO时(使用AutoMapper),我得到一个异常,即Context/Connection已经关闭并且无法加载该对象.(上下文总是关闭不能改变这个:()

所以我需要确保已经加载了Selected Passengers(导航属性上的IsLoaded也是False).如果我检查Passengers集合,Count也会抛出Exception,但是在Passegers集合中还有一个名为"包装相关实体"的集合,其中包含我的过滤对象.

有没有办法将这些包装的相关实体加载到整个集合中?(我无法更改automapper mapping配置,因为它在整个应用程序中使用).

有没有其他方式来获得活跃的乘客?

任何提示都是受欢迎的......

编辑

Gert Arnold的答案不起作用,因为数据未被急切加载.但是当我简化它并删除它的加载位置时.这真是奇怪,因为执行sql在两种情况下都返回所有乘客.因此,将结果放回实体时一定存在问题.

Context.Configuration.LazyLoadingEnabled = false;
var buses = Context.Busses.Where(b => b.IsDriving)
        .Select(b => new 
                     { 
                         b,
                         Passengers = b.Passengers
                     })
        .ToList()
        .Select(x => x.b)
        .ToList();
Run Code Online (Sandbox Code Playgroud)

EDIT2

经过很多努力,格特阿诺德的答案奏效了!正如Gert Arnold建议您需要禁用延迟加载并将其保持关闭状态.这将要求对应用程序进行一些额外的更改,因为上一代开发人员喜欢Lazy Loading -_-

c# entity-framework include where-clause

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