问题列表 - 第25989页

C++ String Literals的安全性和可靠性如何?

所以,我想更好地掌握C++中的字符串文字是如何工作的.我主要关注的是你将字符串文字的地址分配给指针并传递它的情况.例如:

char* advice = "Don't stick your hands in the toaster.";
Run Code Online (Sandbox Code Playgroud)

现在让我说我只是通过在程序的持续时间内复制指针来传递这个字符串.当然,这可能不是一个好主意,但我很好奇幕后会发生什么.

再举一个例子,假设我们创建一个返回字符串文字的函数:

char* foo()
{
    // function does does stuff
    return "Yikes!"; // somebody's feeble attempt at an error message
}
Run Code Online (Sandbox Code Playgroud)

现在让我们说这个函数经常调用,字符串文字只用了大约一半的时间:

// situation #1: it's just randomly called without heed to the return value
foo(); 

// situation #2: the returned string is kept and used for who knows how long
char* retVal = foo();
Run Code Online (Sandbox Code Playgroud)

在第一种情况下,实际发生了什么?字符串刚刚创建但未使用,并且从未取消分配?

在第二种情况下,只要用户发现需要它,字符串是否会被维护?当不再需要它时会发生什么......那个存储器会被释放(假设没有任何东西指向那个空间)?

不要误解我的意思,我不打算像这样使用字符串文字.我打算使用容器来检查我的字符串(可能是std :: string).我大多只是想知道这些情况是否会导致内存管理或数据损坏的问题.

c++ string memory-management string-literals

7
推荐指数
1
解决办法
2548
查看次数

例如,在c ++中,setprecision(12)和setprecision(012)之间的区别是什么原因?

例如,在c ++编写setprecision(12)时,12是10的基数,但是当你像setprecision(012)那样写它时,它是一个八进制数,为什么?

c++ octal

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

重复的Java运行时选项:首选顺序是什么?

考虑以下命令行

java -Xms128m -Xms256m myapp.jar
Run Code Online (Sandbox Code Playgroud)

哪些设置适用于JVM最小内存(Xms选项):128m或256m?

java jvm jvm-arguments java-opts

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

SSIS包保存在哪里?

我右键单击SQL Server 2008 Management Studio的对象资源管理器中的数据库.我转到任务>导入数据,并从平面文本文件导入一些数据,选择将包保存在服务器上.

现在我怎样才能进行编辑或再次运行它?我在SQL Server Management Studio中的哪个位置?我已经扩展了一切,我找不到它.这让我疯了.

ssis sql-server-2008

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

FxCop for .NET 4.0

我知道Visual Studio 2010内置了一个新的代码分析工具,但这仅适用于高级版和终极版.从我可以看到最新的FxCop支持.NET 3.5 SP1.搜索我无法找到任何针对.NET 4.0的FxCop的引用.是否有计划继续提供FxCop并支持.NET 4.0?我在哪里可以找到有关它的更多信息并下载它?

fxcop .net-4.0 visual-studio-2010 visual-studio

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

如何从 OpenOffice Calc .ods 文件中读取单元格的值?

我已经能够使用 xlrd 使用列号和行号作为输入来读取 Excel 单元格值。现在我需要访问一些以 .ods 格式保存的电子表格中的相同单元格值。

例如,我如何使用 Python 读取 .ods 文件中单元格 E10 中存储的值?

python ods

4
推荐指数
1
解决办法
6777
查看次数

python字符串连接问题

我有一些代码,我将连接应用于列表.加入前的列表如下所示:

["'DealerwebAgcy_NYK_GW_UAT'","'DealerwebAgcy'","'UAT'","@ ECNPhysicalMarketCo nfigId","'GATEWAY'","'DEALERWEB_MD_AGCY'","'NU1MKVETC'","'mkvetcu'"," 'C:\ te mp'",'0',''NYK'",'0','1',''isqlw.exe'','GetDate()','12345','''NYK'" ,'350','7']

在连接之后,这是结果字符串

'DealerwebAgcy_NYK_GW_UAT','DealerwebAgcy','UAT',@ ECNPhysicalMarketConfigId,'GAT EWAY','DEALERWEB_MD_AGCY','NU1MKVETC','mkvetcu','C:emp',0,'NYK',0,1,'isqlw .exe文件",GETDATE(),12345, 'NYK',350,7

注意最终的元素'C:\temp''C: emp',

我在python命令提示符上尝试了类似的东西,但我无法重复此操作.

负责这种魔力的相关代码如下.

values_dict["ECNMarketInstance"]  = [strVal(self.EcnInstance_),strVal      (self.DisplayName_) ,strVal(self.environment_), '@ECNPhysicalMarketConfigId',strVal(self.EcnGatewaTypeId_),strVal(self.ConnectionComponent_),strVal(self.UserName_),strVal(self.Password_),strVal(self.WorkingDir_),"0",strVal(self.region_),"0","1", strVal(self.LUVersion_), "GetDate()" ,  self.LUUserId_,strVal(self.LUOwningSite_),self.QuoteColumnId_ , self.Capabilities_]

delim = ","
joined = delim.join(values) 
print values
print joined
Run Code Online (Sandbox Code Playgroud)

python string list

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

解释代码:c#锁定功能和线程

我在一些项目中使用了这种模式(这段代码来自CodeCampServer),我理解它的作用,但我对这种模式的解释非常有趣.特别:

  1. 为什么要仔细检查_dependenciesRegistered.
  2. 为什么要使用lock (Lock){}.

谢谢.

public class DependencyRegistrarModule : IHttpModule
{
    private static bool _dependenciesRegistered;
    private static readonly object Lock = new object();

    public void Init(HttpApplication context)
    {
        context.BeginRequest += context_BeginRequest;
    }

    public void Dispose() { }

    private static void context_BeginRequest(object sender, EventArgs e)
    {
        EnsureDependenciesRegistered();
    }

    private static void EnsureDependenciesRegistered()
    {
        if (!_dependenciesRegistered)
        {
            lock (Lock)
            {
                if (!_dependenciesRegistered)
                {
                    new DependencyRegistrar().ConfigureOnStartup();
                    _dependenciesRegistered = true;
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# multithreading locking

5
推荐指数
1
解决办法
456
查看次数

在SQL中用通配符替换

我知道MS T-SQL不支持正则表达式,但我需要类似的功能.这是我正在尝试做的事情:

我有一个varchar表字段,用于存储面包屑,如下所示:

/ ID1:组别/ ID2:产品组别/ ID3:类别3 /

每个类别名称前面都有其类别ID,用冒号分隔.我想选择并显示这些面包屑,但我想删除类别ID和冒号,如下所示:

/组别/类别2 /类别3 /

应删除前导斜杠(/)到冒号(:) 之间的所有内容.

我无法提取数据,在外部操作数据,然后重新插入表中; 所以我试图在SELECT语句中完成这个.

由于SELECT中返回的行数,我也无法使用游标循环遍历每一行并使用嵌套循环清理每个字段.

可以这样做吗?

谢谢大家 - 杰伊

sql t-sql sql-server string

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

Python SQLite:数据库被锁定

我正在尝试这段代码:

import sqlite

connection = sqlite.connect('cache.db')
cur = connection.cursor()
cur.execute('''create table item
  (id integer primary key, itemno text unique,
        scancode text, descr text, price real)''')

connection.commit()
cur.close()
Run Code Online (Sandbox Code Playgroud)

我抓住了这个例外:

Traceback (most recent call last):
  File "cache_storage.py", line 7, in <module>
    scancode text, descr text, price real)''')
  File "/usr/lib/python2.6/dist-packages/sqlite/main.py", line 237, in execute
    self.con._begin()
  File "/usr/lib/python2.6/dist-packages/sqlite/main.py", line 503, in _begin
    self.db.execute("BEGIN")
_sqlite.OperationalError: database is locked
Run Code Online (Sandbox Code Playgroud)

cache.db的权限没问题.有任何想法吗?

python sqlite pysqlite

46
推荐指数
8
解决办法
9万
查看次数