小编q09*_*987的帖子

C# - 如果我从.NET 2.0开始,我会想念什么?

我得到了一本名为"Pro C#2005和.NET 2.0平台,第三版由Andrew Troelsen"的书.我想知道我是否应该购买"Pro C#2010和.NET 4平台,第五版".因为,最新版本的.NET是4.0.如果我根据这本旧书学习C#,我是否会错过C#语言的一些关键部分?或者,我可以从本书开始,并学习其他资源的新.NET 4.0功能.

谢谢

c#

25
推荐指数
4
解决办法
1206
查看次数

如何自动运行`Mx linum-mode`来显示行号

我已经安装了以显示emacs中的行号.但是,每次我必须手动调用M-x linum-mode才能触发此功能.

有没有办法可以修改我的.emacs文件并自动调用它?

谢谢

; .emacs
(require 'linum)
Run Code Online (Sandbox Code Playgroud)

emacs

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

我在哪里可以找到XAMPP中的MySQL日志文件

我使用PHP在XAMPP中访问MySQL.我的问题是,如果出现数据库错误,我可以在哪里找到MySQL日志文件.

另外,我可以更改该日志文件的默认位置/名称吗?

谢谢

/////基于评论//////

mysql> show variables like '%log_file%';
+---------------------------+------------------------------------+
| Variable_name             | Value                              |
+---------------------------+------------------------------------+
| general_log_file          | C:/xampp/mysql/data/mysql.log      |
| innodb_log_file_size      | 5242880                            |
| innodb_log_files_in_group | 2                                  |
| slow_query_log_file       | C:/xampp/mysql/data/mysql-slow.log |
+---------------------------+------------------------------------+
4 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

mysql xampp

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

C++ - 如何重载operator + =?

给出以下代码片段,

class Num
{
public:
    Num(int iNumber = 0) : m_iNumber(iNumber) {}

    Num operator+=(const Num& rhs)
    {
        this->m_iNumber = (this->m_iNumber + rhs.m_iNumber);
        return *this;
    }
private:
    int m_iNumber;
};

//===========================================================
int _tmain(int argc, _TCHAR* argv[])
{
    Num a(10);

    Num b(100);

    b += a;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我想知道如何正确超载operator+=.

问题:

  1. 如何定义此运算符的签名?特别是,什么应该用于返回值?

  2. 如何实现功能体?

  3. 如何使用这个重载运算符?

我已经提供了上述解决方案,但我担心这是不正确的.

c++

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

如何重置CancellationTokenSource并使用VS2010调试多线程?

我使用CancellationTokenSource来提供一个函数,以便用户可以取消冗长的操作.但是,在用户应用第一次取消后,后面的进一步操作不再起作用.我的猜测是CancellationTokenSource的状态已设置为Cancel,我想知道如何重置它.

  • 问题1:如何在首次使用后重置CancellationTokenSource?

  • 问题2:如何在VS2010中调试多线程?如果我在调试模式下运行应用程序,我可以看到该语句的以下异常

    this.Text = string.Format("Processing {0} on thread {1}", filename, Thread.CurrentThread.ManagedThreadId);
    
    Run Code Online (Sandbox Code Playgroud)

用户代码未处理InvalidOperaationException跨线程操作无效:控制从其创建的线程以外的线程访问的"MainForm".

谢谢.

private CancellationTokenSource cancelToken = new CancellationTokenSource();

private void button1_Click(object sender, EventArgs e)
{
    Task.Factory.StartNew( () =>
    {
        ProcessFilesThree();
    });
}

private void ProcessFilesThree()
{
    ParallelOptions parOpts = new ParallelOptions();
    parOpts.CancellationToken = cancelToken.Token;
    parOpts.MaxDegreeOfParallelism = System.Environment.ProcessorCount;

    string[] files = Directory.GetFiles(@"C:\temp\In", "*.jpg", SearchOption.AllDirectories);
    string newDir = @"C:\temp\Out\";
    Directory.CreateDirectory(newDir);

    try
    {
        Parallel.ForEach(files, parOpts, (currentFile) =>
        {
            parOpts.CancellationToken.ThrowIfCancellationRequested();

            string filename = Path.GetFileName(currentFile);

            using (Bitmap bitmap = new Bitmap(currentFile))
            {
                bitmap.RotateFlip(RotateFlipType.Rotate180FlipNone); …
Run Code Online (Sandbox Code Playgroud)

.net c# debugging winforms cancellationtokensource

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

警告C4819:如何找到必须以unicode保存的字符?

我最近通过我的VS2010看到了以下警告.

警告21警告C4819:该文件包含无法在当前代码页中表示的字符(936).以Unicode格式保存文件以防止数据丢失

c:\boost\vs2010_boost1.49\include\boost\format\alt_sstream_impl.hpp 1
Run Code Online (Sandbox Code Playgroud)

基于MSDN,该文件包含必须以unicode格式保存的字符.

问题:我自己没有触摸过这些文件.有没有办法可以找到这些字符并手动更正.换句话说,我不想以unicode格式保存源文件.

谢谢

visual-studio-2010

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

OpenGL - 关于glDepthMask使用的问题

我在场景中渲染了一个objectA,如下所示.场景也有许多其他对象.

void Draw()
{    
    if( glIsList( displayListID ) )
    {
        glPushAttrib( GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_ENABLE_BIT );

        glEnable( GL_BLEND );
        glEnable( GL_DEPTH_TEST );
        //glDepthMask( GL_FALSE );
        glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );

        glEnable( GL_LINE_SMOOTH );
        glEnable( GL_POINT_SMOOTH );
        glEnable( GL_POLYGON_SMOOTH );

        glMatrixMode( GL_MODELVIEW ); 

        color.setAlpha(alpha); // set alpha transparent of this objectA
        glCallList( displayListID );

        //glDepthMask( GL_TRUE );
        glDisable( GL_BLEND );  

        glPopAttrib();
    }
}
Run Code Online (Sandbox Code Playgroud)

现在问题在于

如图所示,我注释掉了两行// glDepthMask(GL_FALSE); // glDepthMask(GL_TRUE);

场景正确地渲染objectA和其他对象.但是,objectA alpha的修改不再起作用(即color.setAlpha(alpha)).

如果我取消注释上面两行,那么alpha修改就会恢复正常.但是,深度渲染不正确.换句话说,有时,objectA应该在其他对象后面,但看起来objectA在所有对象的前面.

我该如何解决这个问题?

谢谢

opengl

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

PHP - ini_set('session.gc_maxlifetime',5) - 为什么它不会结束会话?

PHP脚本如下:

<?php // continue.php
ini_set('session.gc_maxlifetime', 5);
session_start();
echo ini_get('session.gc_maxlifetime');
// wait for 7 seconds
usleep(7000000);
if (isset($_SESSION['username']))
{
    $username = $_SESSION['username'];
    $password = $_SESSION['password'];
    $forename = $_SESSION['forename'];
    $surname  = $_SESSION['surname'];

    echo "Welcome back $forename.<br />
          Your full name is $forename $surname.<br />
          Your username is '$username'
          and your password is '$password'.";
}
else echo "Please <a href=authenticate2.php>click here</a> to log in.";

?>
Run Code Online (Sandbox Code Playgroud)

根据超时(即5秒),脚本不应打印任何内容.但是,我仍然收到以下消息

5Welcome back Bill. Your full name is Bill Smith. Your username is 'bsmith' and your password is …
Run Code Online (Sandbox Code Playgroud)

php session persistence

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

PHP - 如何从时间字符串中获取年,月,日

给定以下时间段:

$str = '2000-11-29';

$php_date = getdate( $str );
echo '<pre>';
print_r ($php_date);
echo '</pre>';
Run Code Online (Sandbox Code Playgroud)

如何用PHP获取年/月/日?

[seconds] => 20
[minutes] => 33
[hours] => 18
[mday] => 31
[wday] => 3
[mon] => 12
[year] => 1969
[yday] => 364
[weekday] => Wednesday
[month] => December
[0] => 2000
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我一年都会得到1969年.

谢谢

php

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

如何在SourceTree中将开发分支合并到主分支?

我在中创建了一个本地git存储库C:\temp\ConsoleApplication1.然后我单击Git Flow按钮,然后单击确定接受所有默认设置.现在在分支机构下,我可以看到开发和掌握.

接下来,我再次单击Git Flow以启动新功能,然后进行一些更改,最后完成该功能.

现在我的分支看起来如下:

[develop] add line 1
[master] initial commit
Run Code Online (Sandbox Code Playgroud)

问题:我想将开发合并到主分支中.实现这一目标的正确方法是什么?

http://i64.tinypic.com/259ye6b.png

我试图选择develop分支,然后单击Merge按钮.无论我选择哪个提交,都没有任何反应.我也试图选择高手,看不出任何区别.

git atlassian-sourcetree

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