可能重复:
如何在.Net(特别是C#)中深层复制对象?
请看下面的代码(摘自C#书):
public class MyClass
{
public int val;
}
public struct myStruct
{
public int val;
}
public class Program
{
private static void Main(string[] args)
{
MyClass objectA = new MyClass();
MyClass objectB = objectA;
objectA.val = 10;
objectB.val = 20;
myStruct structA = new myStruct();
myStruct structB = structA;
structA.val = 30;
structB.val = 40;
Console.WriteLine("objectA.val = {0}", objectA.val);
Console.WriteLine("objectB.val = {0}", objectB.val);
Console.WriteLine("structA.val = {0}", structA.val);
Console.WriteLine("structB.val = {0}", structB.val);
Console.ReadKey();
}
}
Run Code Online (Sandbox Code Playgroud)
我知道它会产生下面的输出
objectA.val …Run Code Online (Sandbox Code Playgroud) 可能重复:
MySQL中的图像在MySQL中
存储图像
我正在尝试开发一个网站,用户上传他们的图像作为注册的一部分.我希望每个图像都应该有一个用PHP创建的拇指(这并不困难).我想在数据库中保存拇指(因为它们非常小),我使用MySQL.(我不想将拇指保存为驱动器上的物理文件.)
MySQL是否允许保存和检索图像数据,我该如何处理?如果它不支持图像数据,是否有任何免费的数据库呢?如果可以提供链接,我会很高兴.
谢谢.
一段时间后,有一个PHP函数可以重定向.我在某个地方看到它但却记不住了.这就像登录后的gmail重定向.请有人提醒我吗?
我正在浏览.NET参考源中的OperatingSystem.cs文件,并在第50行注意到这段代码:
if ((Object) version == null)
Run Code Online (Sandbox Code Playgroud)
version是一个类的对象Version,这意味着version派生自Object.如果是这样,是不是多余的铸造Object?这不是一样的吗?
if (version == null)
Run Code Online (Sandbox Code Playgroud) 在我正在阅读的一本书中,有这样的摘录:
您还可以使用浮点值作为循环计数器.这是一个
for带有这种计数器的循环示例:Run Code Online (Sandbox Code Playgroud)double a(0.3), b(2.5); for(double x = 0.0; x <= 2.0; x += 0.25) cout << "\n\tx = " << x << "\ta*x + b = " << a*x + b;此代码片段计算的值
a*x+b对于值x从0.0到2.0,在步骤0.25; 但是,在循环中使用浮点计数器时需要注意.许多十进制值无法以二进制浮点形式精确表示,因此差异可能会累积为累积值.这意味着您不应该编写for循环,以便结束循环取决于浮点循环计数器达到精确值.例如,以下设计不良的循环永远不会结束:Run Code Online (Sandbox Code Playgroud)for(double x = 0.0 ; x != 1.0 ; x += 0.2) cout << x;与此环的目的是要输出的值
x,因为它从变化0.0到1.0; 但是,0.2没有精确表示为二进制浮点值,因此值x绝不是完全正确的1.因此,第二个循环控制表达式始终为false,并且循环无限期地继续.
有人可以解释第一个代码块是如何运行而第二个代码块不运行的?
可能重复:
为什么有人会使用#define来定义常量?
c ++ C++中的宏和const之间的区别
- 枚举与const对#define
使用#define和const创建常量有什么区别?有没有比其他的性能优势?当然我更喜欢使用它,const但我会考虑#define它是否具有合适的优势.
我的页面中有这行代码:
<div id='data'>...</div>
<a id='addMore' href='#'>Add more </a>
Run Code Online (Sandbox Code Playgroud)
这一行实际上是一个bootstrap模式.我希望当用户点击它时,我想要克隆它上面的div.问题不在于克隆的代码,而是甚至没有引发click事件.在我的.js文件中,我有这个:
$('#addMore').click (...)
Run Code Online (Sandbox Code Playgroud)
省略号用于防止默认和克隆的代码.我试着用警报进行测试.它仍然无法正常工作.我不知道为什么.
我发现如果我onClick='alert(...)在标签中添加它,它就可以了.
有人可以帮忙吗?
这是模态的HTML(如果有人帮助格式化,请不要介意.我知道这是一团糟):
<div id="addEmailModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="addEmailLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">× </button>
<h3 id="addEmailLabel">Add Email</h3>
</div>
<div class="modal-body">
<div id="emailData">
<input type="text" placeholder="Name (optional)" class="input-xlarge" />
<input type="email" placeholder="Email" />
</div>
<a id="addMore" href="#">Add more…</a>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary" id="btnAdd">Add</button>
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我有这个函数返回一个引用类型.现在,这个函数有两个可选参数,这两个参数都是DateTime类的实例.功能是这样的:
public DateTime GetDate(DateTime start = DateTime.MinValue, DateTime end = DateTime.MinValue)
{
// Method body...
}
Run Code Online (Sandbox Code Playgroud)
VS的错误是:
'start'的默认参数值必须是编译时常量
当然,错误适用于第二个参数,我完全理解发生了什么.
我真正想要的是知道是否有办法解决这个问题,即在方法中有可选参数.现在,我所做的是创造一个过载; 我的意思是,我创建了一个无参数函数GetDate()和一个双参数重载.
这不是一个真正的问题,但我只是想知道是否有办法做到这一点.
从我在Sitepoint上阅读的教程中,我了解到我可以通过PHP加载JS文件(无论如何它都是评论).这个代码的形式是这样的:
<script src="js.php?script1=jquery.js&scipt2=main.js" />
Run Code Online (Sandbox Code Playgroud)
使用PHP的目的是减少JS文件的HTTP请求数量.但是从上面的标记来看,在我看来仍然会有相同数量的请求,好像我为JS文件写了两个标签(我可能是错的,这就是我要问的原因).
问题是如何编写PHP代码以及这种方法相对于"正常"方法的优势是什么?
在搜索代码以淡化winform时,我在MSDN论坛上遇到了这个页面.
for (double i = 0; i < 1; i+=0.01)
{
this.Opacity = i;
Application.DoEvents();
System.Threading.Thread.Sleep(0);
}
Run Code Online (Sandbox Code Playgroud)
该for环具有非整数递增,并从以前的问题,我问,这不是一个很好的编程技术(由于大多数小数的不精确表示).
我提出了这个替代方案.
for (double i = 0; i < 100; ++i)
{
this.Opacity = i/100;
Application.DoEvents();
System.Threading.Thread.Sleep(0);
}
Run Code Online (Sandbox Code Playgroud)
哪个更有效?
如果有一个更好的淡化表格的算法,如果包含它,我会很高兴.
谢谢.