在Unix中,我有三个主要文件.其中一个是图书馆,另一个是程序.
MyLib.c并且MyLib.h是图书馆.main.c 是程序. 在MyLib.h我有一个声明(extern int Variable;).当我尝试使用Variable时main.c我不能.当然,我已经包含MyLib.h在MyLib.c在main.c,我也将它们链接.无论如何,该变量未被识别main.c.
如何在链接程序时获取变量?
我正在使用Apache Commons Logging和SLF4J和log4j,但我也想在conf/log4.properties这样的自定义位置使用log4j.properties.这是问题所在:
如果我使用
PropertyConfigurator.configure("conf/log4j.properties");
Run Code Online (Sandbox Code Playgroud)
然后我的应用程序绑定到log4j并且失败了拥有ACL和SLF4J的目的.
如果没有应用程序知道日志记录实现是什么,配置它的最佳方法是什么?
当使用城堡windsor自动注册时,我看到人们在做类似的事情
_container.Register(
AllTypes.Pick().FromAssembly(Assembly.GetExecutingAssembly())
.WithService.FirstInterface());
Run Code Online (Sandbox Code Playgroud)
对于我的生活,我无法弄清楚Pick()方法的作用,也无法找到任何文档.有谁可以向我解释一下?
我想知道如何在以下情况下定义函数中的返回类型.
我有一个产品,我一次返回所有信息或一个产品.
正如您在下面定义的函数中看到的那样.
public static Products GetProducts(int pid)
{
var pro = from p in context.Products
select p;
if(pid > 0)
pro = pro.where(p => p.ProductID ==pid)
return (Products)p;
}
Run Code Online (Sandbox Code Playgroud)
问题是它给我铸造错误.你可以看到我想要实现的是基于我的参数,它给我一个结果集.一段时间的产品和一些时间单品.我很新的linq所以任何帮助将不胜感激.
错误是无法将类型为'System.Data.Objects.ObjectQuery`1 [TTDCore.Theatres]'的对象强制转换为'TTDCore.Theatres'
当我将它绑定到gridview时.这是一个代码
Products p = Class1.GetProducts(0);
GridView1.DataSource = p;
GridView1.DataBind();
Run Code Online (Sandbox Code Playgroud) 我正在使用Google Maps API在特定页面上显示地图.
问题是该文件http://maps.google.com/maps?file=api.....有时会加载非常慢 - 降低页面的性能,因为其余的JavaScript首先加载到文档准备就绪,这很少到达 - 因为浏览器锁定等待来自Google的文件.
我试图将JavaScript文件从<head>标记移动到我的内容下.但其余的JavaScript从未被解雇,因为浏览器会等待来自Google的文件.
有没有办法解决这个问题,还是有其他人遇到过同样的问题?它最近开始,我不明白为什么.
这是我的代码,如果有人有兴趣:
<script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&sensor=true&key=ABQIAAAAa24xicak8_ghHX58i7La7hRFh9iM79SNC94rOejOtdMRvQmJiBS6Uv5F_1BNSh9ZuSzFXyekHISgew"> </script>
<script type="text/javascript" src="/js/maps.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// Google Maps
initialize();
// Other JavaScript comes here....
});
</script>
Run Code Online (Sandbox Code Playgroud)
如果我访问
http://maps.google.com/maps?file=api&v=2&sensor=true&key=ABQIAAAAa24xicak8_ghHX58i7La7hRFh9iM79SNC94rOejOtdMRvQmJiBS6Uv5F_1BNSh9ZuSzFXyekHISgew
Run Code Online (Sandbox Code Playgroud)
文件立即加载.
我已经编写了大约一年的C++ Console/CMD-line应用程序,并希望进入Windows GUI应用程序.对于那些曾经走过这条路的人,你能给我什么建议/提示.例如:良好的阅读,教程,接近战术等......
我知道这是一个非常广泛的问题,但我真的不知道如何/从哪里开始,因此不知道如何正确地提出这个问题.
我想知道是否有人在一个小团队(我的案例中有3个)中使用Git源代码控制管理工作Django项目.
该项目托管在开发服务器上,这就是我遇到这样一个问题的原因.开发人员无法查看他们的代码是否有效,直到他们将更改提交到本地存储库,然后将这些更改推送到服务器.然而,即便如此,git似乎并没有更新服务器上保存存储库的目录中的文件 - 可能是因为它只存储更改以节省空间.
在处理这个项目时,我们开始踩到彼此的脚趾,因此需要某种版本控制 - 但我无法找到解决方案.
如果有人克服了类似的问题,我很想知道如何做到这一点.
更新:增加了一个问题(问题#4).
大家好,
我正在构建自己的自定义电子邮件实用程序.现在,为了遵守单一责任原则,我想拥有以下类:MailerSender,MailProvider和EmailObject.MailSender更像是一个代表,请在下面查看:
public class MailSender {
private IMailProvider mailProvider;
public void setMailProvider (IMailProvider provider) {
this.mailProvider = provider;
}
// option to set it up during construction
public MailSender (IMailProvider provider) {
this.mailProvider = provider;
}
public void sendEmail(EmailObject obj) {
if(mailProvider == null)
throw new RuntimeException("Need a mail provider to send email.");
try {
mailProvider.send(obj);
} catch (Exception e) {
// do something here
}
}
}
Run Code Online (Sandbox Code Playgroud)
MailSender需要一个IMailProvider电子邮件提供商来完成发送电子邮件的工作.在下面找到它:
public interface IMailProvider {
public void sendEmail(EmailObject obj);
} …Run Code Online (Sandbox Code Playgroud) Joel Spolsky今天一遍又一遍地重复,知道一些人类学对于程序员来说非常有用,因为正在创建的很多东西都是社交软件.
那些已经了解计算机科学的人如何学习人类学知道人类如何运作?有书吗?有记录的讲座吗?
我有一个应用程序动态加载c#源文件并作为插件运行它们.当我在调试模式下运行主应用程序时,是否可以调试到动态程序集?显然设置断点是有问题的,因为源不是原始项目的一部分,但我是否应该介入或打破代码的异常?
有没有办法让编码器生成这个或什么的PDB?
这是我用于动态compliation的代码.
CSharpCodeProvider codeProvider = new CSharpCodeProvider(new Dictionary<string, string>() { { "CompilerVersion", "v3.5" } });
//codeProvider.
ICodeCompiler icc = codeProvider.CreateCompiler();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.GenerateInMemory = true;
parameters.CompilerOptions = string.Format("/lib:\"{0}\"", Application.StartupPath);
parameters.ReferencedAssemblies.Add("System.dll");
parameters.ReferencedAssemblies.Add("System.Core.dll");
CompilerResults results = icc.CompileAssemblyFromSource(parameters, Source);
DLL.CreateInstance(t.FullName, false, BindingFlags.Default, null, new object[] { engine }, null, null);
Run Code Online (Sandbox Code Playgroud) c# ×2
java ×2
.net ×1
api ×1
asp.net ×1
c ×1
c++ ×1
debugging ×1
django ×1
extern ×1
git ×1
google-maps ×1
javascript ×1
linq ×1
linq-to-sql ×1
log4j ×1
oop ×1
properties ×1
visual-c++ ×1