问题列表 - 第4491页

确定表的行大小

如何确定表的最大行大小?我正在寻找一个工具或脚本,所以我不必手动添加每个列的大小.

我的目标是生成一个太宽的表格报告,以便我们可以考虑重构它们.我知道我们有几个非常宽,每个8K页面只有1行,但我想找到其余部分.

t-sql sql-server

45
推荐指数
4
解决办法
7万
查看次数

构造函数的C++虚函数

为什么以下示例打印"0"以及必须更改它以打印"1",如我所料?

#include <iostream>
struct base {
   virtual const int value() const {
      return 0;
   }
   base() {
      std::cout << value() << std::endl;
   }
   virtual ~base() {}
};

struct derived : public base {
   virtual const int value() const {
      return 1;
   }
};

int main(void) {
   derived example;
}
Run Code Online (Sandbox Code Playgroud)

c++ oop virtual constructor class

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

如何在C中正确使用extern关键字

我的问题是关于何时应该用externC中的关键字引用函数.

我没有看到何时应该在实践中使用它.在我编写程序时,我使用的所有函数都通过我包含的头文件提供.那么为什么extern访问头文件中没有公开的东西会有用呢?

我可能会想到如何extern正确地工作,如果是这样,请纠正我.

编辑:如果extern是头文件中没有关键字的默认声明,你应该做些什么吗?

c

227
推荐指数
7
解决办法
23万
查看次数

使用异步工作流并行化的最佳实践

让我们说我想刮一个网页,并提取一些数据.我最有可能写这样的东西:

let getAllHyperlinks(url:string) =
    async {  let req = WebRequest.Create(url)
             let! rsp = req.GetResponseAsync()
             use stream = rsp.GetResponseStream()             // depends on rsp
             use reader = new System.IO.StreamReader(stream)  // depends on stream
             let! data = reader.AsyncReadToEnd()              // depends on reader
             return extractAllUrls(data) }                    // depends on data
Run Code Online (Sandbox Code Playgroud)

let!讲述F#在另一个线程来执行代码,然后将结果结合到一个变量,并继续处理.上面的示例使用两个let语句:一个用于获取响应,一个用于读取所有数据,因此它至少生成两个线程(如果我错了,请纠正我).

虽然上面的工作流程会产生多个线程,但执行顺序是串行的,因为工作流程中的每个项目都依赖于前一个项目.在其他线程返回之前,无法在工作流程中进一步评估任何项目.

let!在上面的代码中有多个有什么好处?

如果没有,该代码如何更改以利用多个let!语句?

f# asynchronous async-workflow

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

使用ASP.Net MVC分页和排序网格

我是MVC的新手,并没有关注你如何在网格上进行分页和排序.我习惯使用asp.Net GridView控件和指向业务层中对象的ObjectDataSource - 在这种情况下,ODS使用ORM在对象上生成的方法处理所有的分页和排序.

我已经看过使用与MVC相同的ORM - 并且事情在那里工作得很好 - 我只是循环通过集合来构建页面上的表 - 但没有ODS来处理分页和排序,我很困惑我该怎么做 我是否有一个单独的控制器用于分页和排序?

我知道我需要自己动手 - 但我从哪里开始?我创建了一个CustomerController,以及一个显示如下所示客户表的视图 - 我想对FirstName或LastName列进行排序.我的模型上有一个Sort()方法,它将采用GridView/ODS对使用的格式的字符串排序表达式.我会在我的CustomerController上创建一个名为Sort的新Action,并在我的标题中添加一个ActionLink吗?

    <table>
    <tr>
        <th>
            First Name
        </th>
        <th>
            Last Name
        </th>
    </tr>
    <% foreach (var item in Model)
       { %>
    <tr>
        <td>
            <%= Html.Encode(item.FirstName) %>
        </td>
        <td>
            <%= Html.Encode(item.LastName) %>
        </td>
    </tr>
    <% } %>
</table>
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc gridview objectdatasource

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

为什么StringBuilder类不是从Stream继承的?

我只是好奇这个.令我感到震惊的是,StringBuilder的功能在功能上(如果不是技术上)与Stream相同 - 它是可以添加其他数据的数据仓.

再次,只是好奇.

c# stringbuilder stream

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

为什么g ++ 4.0版本的map <T> :: erase(map :: <T> iterator)不返回迭代器?

我正在将一个中型C++项目从Visual Studio 2005移植到MacOS,XCode/GCC 4.0.

我偶然发现的一个差异与从地图中删除元素有关.在Visual Studio中,我可以擦除迭代器指定的元素,并将返回值赋给迭代器以获取下一个元素的位置.这样,迭代器在擦除后不会指向某个无效地址.

换句话说,在Visual Studio中我可以这样做:

itor = m_ResourceMap.erase(itor);

在GCC 4.0中,擦除函数返回void,所以我不能这样做.这是否意味着以下映射元素向后移动,因此迭代器自动指向下一个元素,或者这是否意味着我必须在之后增加迭代器?该 在线文档STL是不是关于这个问题的非常简洁的XCode似乎并没有什么.

谢谢你的帮助,

阿德里安

c++ gcc stl

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

不释放内存是否可以接受

我正在研究一个应该从命令行使用的项目,其语法如下:

program-name input-file
Run Code Online (Sandbox Code Playgroud)

该程序应该处理输入,计算一些东西并在stdout上吐出结果.

我选择的语言是C++,原因有几个,我不愿意辩论.计算阶段将是高度符号化的(思考编译器),并将使用非常复杂的动态分配数据结构.特别是,它不适合RAII风格的编程.

我想知道忘记释放内存是否可以接受,因为我希望整个计算消耗的内存少于可用内存,并且程序完成后OS可以在一步中自由回收所有内存(假设程序终止)很快).你有什么感受?

作为备份计划,如果我的项目需要作为服务器或交互式运行,我想我总是可以将垃圾收集器重新编译为源代码.有没有人有使用C++垃圾收集器的经验?他们运作得好吗?

c c++ oop memory-leaks memory-management

15
推荐指数
6
解决办法
2793
查看次数

XmlSerialization Collection as Array

我正在尝试序列化需要使用多个同名元素的自定义类.
我尝试过使用xmlarray,但它将它们包含在另一个元素中.

我希望我的xml看起来像这样.

<root>
     <trees>some text</trees>
     <trees>some more text</trees>
</root>
Run Code Online (Sandbox Code Playgroud)

我的代码:

[Serializable(), XmlRoot("root")]
public class test
{
      [XmlArray("trees")]
      public ArrayList MyProp1 = new ArrayList();

      public test()
      {
           MyProp1.Add("some text");
           MyProp1.Add("some more text");  
      }
}
Run Code Online (Sandbox Code Playgroud)

.net c# xml-serialization

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

规范化需要多长时间?

我有这些表:

Projects(projectID, CreatedByID)
Employees(empID,depID)
Departments(depID,OfficeID)
Offices(officeID)
Run Code Online (Sandbox Code Playgroud)

CreatedByID是一个外键Employees.我有一个几乎每个页面加载运行的查询.

添加冗余OfficeIDProjects以消除三个连接是不好的做法吗?或者我应该做以下事情:

SELECT * 
FROM Projects P
JOIN Employees E   ON P.CreatedBY = E.EmpID
JOIN Departments D ON E.DepID = D.DepID
JOIN Offices O     ON D.officeID = O.officeID
WHERE O.officeID = @SomeOfficeID
Run Code Online (Sandbox Code Playgroud)

在应用程序编程中,我"首先编写最佳实践并在之后进行优化",但数据库管理员始终警告连接的成本.

sql database-design database-normalization

20
推荐指数
5
解决办法
6182
查看次数