问题列表 - 第5930页

在C++中分离声明和定义有什么优缺点?

在C++中,函数的声明和定义,变量和常量可以像这样分开:

function someFunc();

function someFunc()
{
  //Implementation.
}
Run Code Online (Sandbox Code Playgroud)

实际上,在类的定义中,通常就是这种情况.通常使用.h文件中的成员声明类,然后在相应的.C文件中定义这些类.

这种方法有哪些优缺点?

c++ language-design declaration definition

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

PHP注意:循环数组时未定义的索引

我正在循环一个二维数组,如下所示:

if (!empty($aka)) {
    foreach ($aka as $ak) {
        if($ak["lang"]=="es") {
            $sptitle=$ak["title"];
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

很简单.如果数组($ aka)不为空,我循环通过它,当它发现"lang"索引等于"es"时,我只是在$ sptitle中保存该索引的"title"值.

问题是数组($ aka)包含大量信息,有时没有"lang"索引......我得到这个错误:注意:未定义的索引:lang.

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

这是数组的摘录,以帮助您理解.请注意,[1]没有[lang]索引,但[2]确实有:

[1] => Array
    (
        [title] => "The Lord of the Rings: The Motion Picture"
        [year] => ""
        [country] => "USA"
        [comment] => "promotional title"
    )

[2] => Array
    (
        [title] => "Señor de los anillos: La comunidad del anillo, El"
        [year] => ""
        [country] => "Argentina"
        [comment] => "Chile, Mexico, Peru, Spain"
        [lang] => "es"
    )
Run Code Online (Sandbox Code Playgroud)

谢谢!

php arrays

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

可以将私有方法放在我的控制器中,还是应该将它们分成某种类型的asp.net mvc辅助类?

我有一个控制器根据用户类型加载一些下拉菜单.例如:

public ActionResult Index()
    {
      switch (SessionHelper.ViewLimit)
          {
            case "C":
              ViewData["CustDivision"] = LoadCustDivisions();
              ViewData["Customer"] = LoadCustomers();
              break;
            case "P":
              ViewData["Customer"] = LoadCustomers();
              ViewData["Employee"] = LoadEmployees();
              break;
            case "D":
              ViewData["Customer"] = LoadCustomers();
              ViewData["Division"] = LoadDivisions();
              break;
             default:
              return RedirectToAction("Logout", "Account");
          }
    return View()
    }
Run Code Online (Sandbox Code Playgroud)

首先,switch语句是否属于控制器,如果是,那么我应该在哪里放置LoadCustomers(),LoadDivisions(),LoadEmployees()?

c# asp.net-mvc

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

在ASP.NET MVC中获取MembershipUser

我正在ASP.NET MVC中编写一个新的应用程序.我已经创建了一个自定义MembershipProvider,它将成员资格数据存储在我自己的数据库模式中.这一切都有效,但是如何在我的应用程序中获取MembershipUser,以便我可以获取登录用户的用户密钥并加载与该用户相关的模型类?

c# asp.net-mvc asp.net-membership

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

在没有Git的情况下阅读Git存储库

我正在研究构建一个超小型(最好是PHP)的Web应用程序的想法,该应用程序将作为git存储库的最小前端服务(除此之外).

用于读取git存储库(".git"文件夹)的任何库/文章而不必执行"git"进程?我正在寻找一个API来管理git存储库.我只对基本函数感兴趣,例如读取最后提交(提交者名称,提交注释,日期),显示和遍历分支......

谢谢,ANaimi

php git version-control

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

错误的规格 - 你会做什么?

您的项目所有者为您提供了规范,并要求您提供相关估算.你很乐意遵守并给了他一个数字.您按工作/小时收费.

但是当项目即将完成时,您意识到您误读了规范并忘记在估算中包含大量功能.如果包含该功能,则整个实施的成本将至少为40%.你会怎么做?您是否会尝试向项目业主解释情况并要求更多资金?

编辑:当然,由于错误,说我错了主人是必须的.但问题是你会要求更多$$$来弥补缺失的规格吗?

Eidt 2:第一次我的问题不正确!我只在项目即将完成时发现了我的错误,而不是在初始阶段.

specifications

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

算术表达式的第一个和跟随集

我想知道我为这个语法做的FIRST和FOLLOW设置是否正确

S -> TS'
S' -> +TS' | -TS' | epsilon
T -> UT'
T' -> *UT' | /UT' | epsilon
U -> VX
X -> ^U | epsilon
V -> (W) | -W | W | epsilon
W -> S | number 
Run Code Online (Sandbox Code Playgroud)
FIRST(S) = FIRST(T) = FIRST(U) = FIRST(V) = FIRST(W) = { ( , - , + , number ,     epsilon } 
FIRST(T') = { *, / , epsilon} 
FIRST(S') = { + , - , epsilon}
FIRST(X) …
Run Code Online (Sandbox Code Playgroud)

grammar parsing

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

如何从字符串中实例化类型及其值?

我有类似这样的代码:

class Foo {     
  Dictionary<Type, Object> _dict;

  void Create(string myType, string myValue)
  {
    var instance = Type.Instanciate(myType)  // How do I do this?
    if (var.IsPrimitive)
    {
      var.GetType().Parse(myValue)   // I know this is there...how to invoke?
      Dictionary[instance.GetType()] = instance;
    }
  }

  T GetValue<T>(T myType) { return (T)_dict[T]; }
}

// Populate with values
foo.Create("System.Int32", "15");
foo.Create("System.String", "My String");
foo.Create("System.Boolean", "False");

// Access a value
bool b = GetValue(b);
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:
a)如何实例化类型
b)当支持Parse时,从字符串中解析类型值.

.net c#

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

.NET WinForm GC问题

这段代码干净了吗?

private void button1_Click(object sender, EventArgs e)
{
  frmCustomDialog f = new frmCustomDialog();
  if(f.ShowDialog() == DialogResult.OK)
    TextBox1.Text = f.MyCustomProperty;
}
Run Code Online (Sandbox Code Playgroud)

您是否需要关闭或处理表格f或任何其他内容?还是自动垃圾收集?

谢谢.

.net c# garbage-collection winforms

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

模仿窗口.使用javascript在Opera中的错误

我目前正在开发一个Web应用程序,我有一个JS日志记录机制,处理未被页面内的js代码捕获的Javascript错误.我使用window.onerror来捕获所有这些错误并将其他地方记录在哪里.

但问题是Opera没有window.onerror事件.我能想到的一种方法是,对所有js函数进行字符串处理,然后在body加载后在这些函数中插入try catch块.但它在许多情况下不起作用,但是,它至少在某种程度上起作用.

我确信这种方法很糟糕,但是,我想不出更好的方法.请指教.

更新:现在,我正在调用下面的代码尽可能多地捕获错误.

function OnBodyLoad()
{
        var allElements = document.getElementsByTagName("*");
        for(var cnt = 0;cnt < allElements.length;cnt++)
        {
            RegisterAllEvents(allElements[cnt]);
        }
}
function RegisterAllEvents(objToProcess){
    for(var cnt = 0;cnt < objToProcess.attributes.length;cnt++){
        if(IsAttributeAnEvent(objToProcess.attributes[cnt].name))
        {
            objToProcess.attributes[cnt].value =  'try{'+objToProcess.attributes[cnt].value+'}catch(err){LogError("'+ objToProcess.id+'"'+ ',err);}';
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

javascript opera

8
推荐指数
3
解决办法
7874
查看次数